为什么 Maven2 在每次构建时都会检查 stax-ex 的更新?

发布于 2024-10-04 05:30:34 字数 332 浏览 8 评论 0原文

Maven2 在每次构建时都会检查 stax-ex 的更新。它只是检查这个单一的依赖关系,所有其他依赖关系每天仅更新一次。

Maven2 输出:

artifact org.jvnet.staxex:stax-ex:检查来自 java.net 的更新

stax-ex 的更新(groupid:org.jvnet.staxex,版本:1.2)包含在 jaxws-rt 中(groupid:com.sun.xml) .ws,版本:2.1.3)。我们有一个人工存储库作为中介。

我能做什么? (离线构建将是一个不受欢迎的解决方法。)

Maven2 checks for updates of stax-ex at every build. And it's just checking this single dependency, all other dependencies are updated only once per day.

Maven2 output:

artifact org.jvnet.staxex:stax-ex: checking for updates from java.net

stax-ex (groupid: org.jvnet.staxex, version: 1.2) is included as part of jaxws-rt (groupid: com.sun.xml.ws, version: 2.1.3). We have an artifactory repository as intermediary.

What could I do? ( Building offline would be an unpopular work-around.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

只等公子 2024-10-11 05:30:34

我也遇到了同样的问题,想弄清楚这个问题!

问题出在 pom.xml 中。 Streambuffer的xml文件(jaxws-rt的依赖),它没有指定stax-ex的版本。相反,它使用 RELEASE,表示最新发布的版本:

<dependency>
  <groupId>org.jvnet.staxex</groupId>
  <artifactId>stax-ex</artifactId>
  <version>RELEASE</version>
</dependency>

这迫使 Maven 通过下载其相应的 <代码>maven-metadata.xml。

一个简单的解决方法是在 pom.xm 的 dependencyManagement 部分中强制使用 stax-ex 的版本:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.jvnet.staxex</groupId>
      <artifactId>stax-ex</artifactId>
      <version>1.2</version>
    </dependency>
  </dependencies>
</dependencyManagement>

然后 Maven 将不再因为这个警告而打扰您...

I had the same problem, and wanted to get to the bottom of it!

The problem is in the pom.xml file of streambuffer (a dependency of jaxws-rt), which doesn't specify a version for stax-ex. Instead, it uses RELEASE, meaning the latest released version:

<dependency>
  <groupId>org.jvnet.staxex</groupId>
  <artifactId>stax-ex</artifactId>
  <version>RELEASE</version>
</dependency>

This forces Maven to check constantly for the latest release of stax-ex (even if jaxws-rt itself requests version 1.2), by downloading its corresponding maven-metadata.xml.

An easy workaround is to force the version of stax-ex in a dependencyManagement section of your pom.xm:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.jvnet.staxex</groupId>
      <artifactId>stax-ex</artifactId>
      <version>1.2</version>
    </dependency>
  </dependencies>
</dependencyManagement>

And then Maven will stop bothering you about this warning...

将军与妓 2024-10-11 05:30:34

看起来您的 POM 中有远程存储库声明,绕过了企业存储库。如果您使用 Artifactory,您可以在 POM 中自动剥离 在虚拟存储库级别上,或配置 mirror-any在您的设置中强制执行工件解析时请严格通过 Artifactory。

It looks like you have remote repository declarations in your POMs that bypass your enterprise repository. If you are using Artifactory you can either have remote repository references in POMs automatically stripped off on a virtual repository level, or configure mirror-any in your settings to enforce artifact resolution go strictly through your Artifactory.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文