我的Maven配置有一个小问题。所有其他问题和答案都没有解决我的问题,所以我开始提出一个新问题。Maven不使用本地存储库
我的问题是,我的Maven没有使用本地存储库。它总是从远程存储库中获取工件。
当一个工件被下载或当我建立一个项目时,它被安装在本地仓库中,所以路径是正确的。
问题是:当我构建一个SNAPSHOT项目时,它只安装在本地存储库中(应该是这样的,不希望每次都在我的连接上发布它)。当我在pom.xml中构建另一个具有前一个依赖项目的项目时,maven想要从nexus服务器下载它没有找到它的项目,而不是从本地存储库中取得项目。
这是我的Maven的配置:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>C:\Users\Marc\.m2\repository</localRepository>
<interactiveMode>false</interactiveMode>
<usePluginRegistry>false</usePluginRegistry>
<pluginGroups>
</pluginGroups>
<servers>
<server>
<id>releases</id>
<username>MY_USERNAME</username>
<password>MY_PASSWORD</password>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
</server>
<server>
<id>snapshots</id>
<username>MY_USERNAME</username>
<password>MY_PASSWORD</password>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
</server>
<server>
<id>nexus</id>
<username>MY_USERNAME</username>
<password>MY_PASSWORD</password>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
</server>
</servers>
<profiles>
<profile>
<id>nexussrv</id>
<repositories>
<repository>
<id>snapshots</id>
<url>http://nexus/content/repositories/snapshots</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</repository>
<repository>
<id>releases</id>
<url>http://nexus/content/repositories/releases</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>nexus</id>
<url>http://nexus/content/groups/public</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexussrv</activeProfile>
</activeProfiles>
</settings>
从Nexus和出版的文物(快照和RELEASE)与此配置的联系工作,下载,但它不会从本地存储库中使用的文物。
感谢您的帮助!
mhh。我将它从始终设置为每天,但它仍尝试从联结中接收它。 –
如前所述,maven每天检查一次连接。如果你有一些快照(例如,如果一个CI服务器部署它),这是唯一可用的。如果你永远不会在关系上有shnapshot,那么你应该将updatePolicy设置为从不。 – MrD
现在工作。谢谢! –