首页 > 解决方案 > Maven 无法从本地存储库 (nexus) 下载某些依赖项或插件

问题描述

我有一个带有一些模块的项目(java),并且我有本地存储库关系。在 pom.xml 我设置存储库地址:

<repositories>
        <repository>
            <id>local-maven-repository</id>
            <url>http://nexus_repository:8080/repository/maven-public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>local-maven-repository2</id>
            <url>http://nexus_repository:8080/repository/maven-public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

但是 maven 从“repo.maven.apache.org”下载一些依赖项或插件。以及从本地存储库下载的一些依赖项或插件。

标签: javamavenrepositorynexus

解决方案


根据 https://blog.sonatype.com/using-nexus-3-as-your-repository-part-1-maven-artifacts我添加了 setting.xml 但我有错误:

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">

 <servers>
    <server>
      <id>nexus-snapshots</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
      <id>nexus-releases</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
  </servers>

  <mirrors>
    <mirror>
      <id>central</id>
      <name>central</name>
      <url>http://nexus_repository:8080/repository/maven-public/</url>
      <mirrorOf>*</mirrorOf>
    </mirror>
  </mirrors>

</settings>

[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.glassfish.jersey:jersey-bom:2.30.1: Could not transfer artifact org.eclipse.ee4j:project:pom:1.0.5 from/to central (http://nexus_repository:8080/repository/maven-public/): nexus_repository: Name or service not known @ org.glassfish.jersey:jersey-bom:2.30.1, /root/.m2/repository/org/glassfish/jersey/jersey-bom/2.30.1/jersey-bom-2.30.1.pom, line 24, column 13
[ERROR] Non-resolvable import POM: Could not transfer artifact org.eclipse.jetty:jetty-bom:pom:9.4.31.v20200723 from/to central (http://nexus_repository:8080/repository/maven-public/): nexus.mohaymen.ir @ org.springframework.boot:spring-boot-dependencies:2.3.4.RELEASE, /root/.m2/repository/org/springframework/boot/spring-boot-dependencies/2.3.4.RELEASE/spring-boot-dependencies-2.3.4.RELEASE.pom, line 2944, column 19


推荐阅读