我有一个中等规模的项目,有很多模块相互依赖。当我运行mvn compile
或mvn package
时,它可以工作,但是当我尝试从根目录运行mvn dependency:tree
时,它会失败,抱怨它无法从神器中获取工件。确实神器不存在于神器中。它是我编写的模块之一,是我项目中另一个模块的依赖项。为什么mvn dependency:tree
在认识到这是第一方模块时会在神器中搜索此模块? mvn package
不抱怨。请指教。 maven错误就像这样
[ERROR] Failed to execute goal on project XXX: Could not resolve dependencies for project XXX: Could not transfer artifact YYY from/to repo (ZZZ): Failed to transfer file: YYY. Return code is: 503 , ReasonPhrase:Error. -> [Help 1]
如果需要,这是我的settings.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd"
xmlns="http://maven.apache.org/SETTINGS/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mirrors>
<mirror>
<mirrorOf>external:*</mirrorOf>
<name>repo</name>
<url>http://XXX/artifactory/repo/</url>
<id>repo</id>
</mirror>
</mirrors>
<profiles>
<profile>
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>Artifactory Central</name>
<url>http://XXX/artifactory/libs-release/</url>
</repository>
<repository>
<releases>
<enabled>false</enabled>
</releases>
<id>snapshots</id>
<name>Artifactory Snapshots</name>
<url>http://XXX/artifactory/libs-snapshot/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>Artifactory Plugins Central</name>
<url>http://XXX/artifactory/plugins-release/</url>
</pluginRepository>
<pluginRepository>
<releases>
<enabled>false</enabled>
</releases>
<id>snapshots</id>
<name>Artifactory Plugins Snapshots</name>
<url>http://XXX/artifactory/plugins-snapshot/</url>
</pluginRepository>
</pluginRepositories>
<id>artifactory</id>
</profile>
</profiles>
<activeProfiles>
<activeProfile>artifactory</activeProfile>
</activeProfiles>
</settings>
答案 0 :(得分:0)
'mvn package'跳过Maven周期的'验证'阶段。
这样你就可以成功使用'mvn package'而且你从来不知道任何'验证'问题。
答案 1 :(得分:0)
这与Maven doesn't recognize sibling modules when running mvn dependency:tree相同,答案是:
mvn compile dependency:tree