猿问

com.sun.xml.ws:jaxws-rt:pom:2.2.10 的 POM 无效

我在项目构建过程中遇到了奇怪的问题。问题可能归结为对 jaxws-rt 2.2.10 的依赖。主要问题是这个警告会阻止传递依赖传播到我们的可分发对象。 The POM for com.sun.xml.ws:jaxws-rt:pom:2.2.10 is invalid, transitive dependencies (if any) will not be available


pom 可能是错误的,如mvn dependency:tree -X或的输出所示mvn dependency:tree -Dverbose


[WARNING] Failed to build parent project for com.sun.xml.ws:bundles:pom:2.2.10

[WARNING] Failed to build parent project for com.sun.xml.ws:jaxws-rt:pom:2.2.10


[WARNING] The POM for com.sun.xml.ws:jaxws-rt:pom:2.2.10 is invalid, transitive dependencies (if any) will not be available: 5 problems were encountered while building the effective model for co

m.sun.xml.ws:jaxws-rt:2.2.10

[ERROR] 'dependencies.dependency.version' for javax.xml.bind:jaxb-api:jar is missing. @

[ERROR] 'dependencies.dependency.version' for com.sun.xml.bind:jaxb-core:jar is missing. @

[ERROR] 'dependencies.dependency.version' for com.sun.xml.bind:jaxb-impl:jar is missing. @

[ERROR] 'dependencies.dependency.version' for org.jvnet.staxex:stax-ex:jar is missing. @

[ERROR] 'dependencies.dependency.version' for com.sun.xml.fastinfoset:FastInfoset:jar is missing. @

奇怪的是 jaxws-rt pom 没有定义上述库的版本。最大的魔力发生在我们的 jenkins 上,构建过程与任何其他笔记本电脑不同。只需将版本添加到本地存储库中的 jaxws-rt pom 即可解决此问题。我相信,当我发现为什么 jenkins 能够在没有警告的情况下构建它时,我将能够修复笔记本电脑上的错误。


到目前为止我们调查了什么

  • 似乎它不是特定于 Maven 版本的

  • 似乎不是特定于操作系统的

  • 不要相信它可能是由不同的java版本引起的(只是尝试)

  • jenkins 中没有支持的文件

  • 下载的依赖项在内容方面是相同的(詹金斯 vs 笔记本电脑)

注意:短期内不可能重写 pom,因为它已经有点复杂了


Helenr
浏览 470回答 3
3回答

翻翻过去那场雪

要找出构建在 jenkins 和笔记本电脑上的行为不同的原因,您可以检查以下几点:验证您是否在双方使用完全相同的 Maven 版本。例如,您可以在 jenkins 中添加一个简单的“mvn -version”任务来输出版本详细信息。验证您的 maven 安装中没有特殊设置:在 jenkins 和您的笔记本电脑上执行“mvn help:effective-pom”和“mvn help:effective-settings”,然后您可以比较这两个设置:是否有一些不同的定义<repository>还是<mirror>一方面?如果设置有一些差异,您可以在 maven 安装中检查以下文件:Maven 安装路径中的全局设置:conf/settings.xmljenkins 代理的 $home 中的用户设置:$home/.m2/settings.xml请注意,可以分别使用-gs和-s&nbsp;mvn 命令行选项覆盖此设置文件中的每一个。
随时随地看视频慕课网APP

相关分类

Java
我要回答