我目前在部署war文件的服务器上设置了archiva远程存储库。我需要将war文件从远程存储库复制到服务器上的目录中。所以我使用maven-dependency-plugin就像这样
mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:copy \
-Dartifact=<groupId>:<artifactId>:<version>:war \
-DoutputDirectory=/home/me/some/directory
查看maven文档,此命令将解析依赖关系,然后将其复制到目录。它将依赖项下载到此结构中。
Directory struture
~/.m2/repository/<groupId>/<artifactId>/<version>/<artifactId>-<version>.war
工件在本地存储库中后,复制命令失败并说它找不到工件。
Unable to find artifact.
Could not find artifact <groupId>:<artifactId>:war:<version>
这个结构看起来是否正确?奇怪的是,当我运行
时,junit的目录结构是相同的mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:copy \
-Dartifact=junt:junit:4.11:jar \
-DoutputDirectory=/home/me/some/directory
一切正常。
答案 0 :(得分:0)
我刚刚遇到类似的问题,但是来自Eclipse。也许这会对你有帮助。
我正在使用copy-dependencies
目标。
在我的pom中,我必须将远程仓库定义为:
<repository>
<id>http://maven.xwiki.org</id>
<url>http://maven.xwiki.org/externals</url>
</repository>
来自CLI的Maven警告&#34;://&#34;上面的id
中的字符,但如果我从Eclipse中删除它们,则无法在远程仓库中找到依赖项。