Maven 马文在战争中留下了一个罐子
我们使用maven 2.2.1来构建项目。主pom列出了构建的模块(一些WAR项目和一些“普通”JAR) 最近,我们在一个WAR项目中添加了一个新的依赖项:Maven 马文在战争中留下了一个罐子,maven,war,Maven,War,我们使用maven 2.2.1来构建项目。主pom列出了构建的模块(一些WAR项目和一些“普通”JAR) 最近,我们在一个WAR项目中添加了一个新的依赖项: <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.2.
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.2.6</version>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
<exclusion>
<artifactId>commons-codec</artifactId>
<groupId>commons-codec</groupId>
</exclusion>
</exclusions>
</dependency>
org.apache.httpcomponents
httpclient
4.2.6
公用记录
公用记录
通用编解码器
通用编解码器
当在开发者机器上从命令行(mvn clean package)本地构建时,它运行良好。但是当在自动构建系统(Hudson)上构建时,httpcore JAR(它是httpclient的一个依赖项)并没有打包到最终的WAR中。没有报告错误,只是缺少JAR
maven settings.xml文件是相同的(除了repo路径-唯一值得注意的非默认选项是offline=true)。有什么问题吗?我想到的唯一一件事是,您的构建机器在m2 repo中有一个模块的旧版本。
清理整个
$HOME/.m2/存储库(或保存repo的位置),然后重试。我唯一想到的是,您的构建机器在m2 repo中有一个模块的旧版本。
清理整个$HOME/.m2/存储库(或保存repo的位置),然后重试。我唯一想到的是,您的构建机器在m2 repo中有一个模块的旧版本。
清理整个$HOME/.m2/存储库(或保存repo的位置),然后重试。我唯一想到的是,您的构建机器在m2 repo中有一个模块的旧版本。
清除整个$HOME/.m2/存储库(或保存回购的位置),然后重试。发现问题。(并已解决)
简而言之:repo中的httpclient.jar没有.pom文件。(所以maven不知道它有依赖项)
长:
它是一个离线存储库,因此丢失的工件必须手动修复。问题是我第一次将文件复制到错误的文件夹,maven没有“看到”它们。然后“盲目地”听从了它的建议:
Missing:
----------
1) org.apache.httpcomponents:httpclient:jar:4.2.6
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.apache.httpcomponents -DartifactId=
httpclient -Dversion=4.2.6 -Dpackaging=jar -Dfile=/path/to/file
这将只是将jar文件复制到repo,而不使用pom
所以我只是将httpclient的完整文件夹复制到repo中(以及它的父文件夹和maven随后抱怨的一些其他相关文件)
我想这是一种用户错误。发现问题。(并已解决)
简而言之:repo中的httpclient.jar没有.pom文件。(所以maven不知道它有依赖项)
长:
它是一个离线存储库,因此丢失的工件必须手动修复。问题是我第一次将文件复制到错误的文件夹,maven没有“看到”它们。然后“盲目地”听从了它的建议:
Missing:
----------
1) org.apache.httpcomponents:httpclient:jar:4.2.6
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.apache.httpcomponents -DartifactId=
httpclient -Dversion=4.2.6 -Dpackaging=jar -Dfile=/path/to/file
这将只是将jar文件复制到repo,而不使用pom
所以我只是将httpclient的完整文件夹复制到repo中(以及它的父文件夹和maven随后抱怨的一些其他相关文件)
我想这是一种用户错误。发现问题。(并已解决)
简而言之:repo中的httpclient.jar没有.pom文件。(所以maven不知道它有依赖项)
长:
它是一个离线存储库,因此丢失的工件必须手动修复。问题是我第一次将文件复制到错误的文件夹,maven没有“看到”它们。然后“盲目地”听从了它的建议:
Missing:
----------
1) org.apache.httpcomponents:httpclient:jar:4.2.6
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.apache.httpcomponents -DartifactId=
httpclient -Dversion=4.2.6 -Dpackaging=jar -Dfile=/path/to/file
这将只是将jar文件复制到repo,而不使用pom
所以我只是将httpclient的完整文件夹复制到repo中(以及它的父文件夹和maven随后抱怨的一些其他相关文件)
我想这是一种用户错误。发现问题。(并已解决)
简而言之:repo中的httpclient.jar没有.pom文件。(所以maven不知道它有依赖项)
长:
它是一个离线存储库,因此丢失的工件必须手动修复。问题是我第一次将文件复制到错误的文件夹,maven没有“看到”它们。然后“盲目地”听从了它的建议:
Missing:
----------
1) org.apache.httpcomponents:httpclient:jar:4.2.6
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.apache.httpcomponents -DartifactId=
httpclient -Dversion=4.2.6 -Dpackaging=jar -Dfile=/path/to/file
这将只是将jar文件复制到repo,而不使用pom
所以我只是将httpclient的完整文件夹复制到repo中(以及它的父文件夹和maven随后抱怨的一些其他相关文件)
我想这是用户错误的一种形式。。。。听起来不可能。。。您能否在哈德逊运行的机器上运行mvn package
,看看是否会出现相同的效果?如果是这样的话,mvn dependency:tree
与本地的有什么不同吗?我只是在构建系统上运行了maven,同样的效果也出现了:生成的war中缺少httpcore jar。我在新签出源文件的基础上进行了构建。请在有问题的机器和没有问题的机器上运行mvn dependency:tree-Dverbose
,并检查是否有任何不同。顺便说一句:那。。。听起来不可能。。。您能否在哈德逊运行的机器上运行mvn package
,看看是否会出现相同的效果?如果是这样的话,mvn dependency:tree
与本地的有什么不同吗?我只是在构建系统上运行了maven,同样的效果也出现了:生成的war中缺少httpcore jar。我在新签出源文件的基础上进行了构建。请在有问题的机器和没有问题的机器上运行mvn dependency:tree-Dverbose
,并检查是否有任何不同。顺便说一句:那。。。听起来不可能。。。您能否在哈德逊运行的机器上运行mvn package
,看看是否会出现相同的效果?如果是这样的话,mvn dependency:tree
与本地的有什么不同吗?我只是在构建系统上运行了maven,同样的效果也出现了:生成的war中缺少httpcore jar。我在新签出源文件的基础上进行了构建。请在有问题的机器和没有问题的机器上运行mvn dependency:tree-Dverbose
,并检查是否有任何不同。顺便说一句:那。。。听起来不可能。。。你能