我想使用 nexus 创建公司本地 maven 存储库。存储库不应从公共 Internet 下载任何内容,所需的一切都添加到 repo。开发人员的本地 maven 实例应从公司 nexus 下载所需的库和工具。我已经设法通过在 settings.xml 中使用这样的镜像来做到这一点:
<mirror>
<id>company-repository</id>
<name>Company releases repository</name>
<url>http://nexus.company.com/nexus/content/repositories/releases</url>
<mirrorOf>*</mirrorOf>
</mirror>
这个解决方案的问题是我只能指向发布存储库,我还想包括第三方和快照存储库来搜索。有谁知道应该怎么做?镜像标签只需要一个 url。
我也尝试过像这样定义默认配置文件:
<profile>
<id>defaultProfile</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>company-thirdparty-repo</id>
<url>http://nexus.company.com//nexus/content/repositories/thirdparty</url>
<releases>
<checksumPolicy>fail</checksumPolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>company-releases-repo</id>
<url>http://nexus.company.com/nexus/content/repositories/releases</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
<releases>
<enabled>true</enabled>
<checksumPolicy>fail</checksumPolicy>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://nexus.company.com/nexus/content/repositories/central</url>
<releases>
<enabled>true</enabled>
<checksumPolicy>fail</checksumPolicy>
</releases>
<snapshots>
<checksumPolicy>fail</checksumPolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
该解决方案的问题在于,如果 Maven 从这些存储库中找不到某些东西,它仍然会从 repo.maven.apache.org 下载它。我将不胜感激。谢谢!