Java mvn依赖项使用不同JAR的相同版本
我创建了一个私人图书馆,并将其包含在我的一些项目中。该库称为Java mvn依赖项使用不同JAR的相同版本,java,maven,Java,Maven,我创建了一个私人图书馆,并将其包含在我的一些项目中。该库称为处理器。 这个库是使用maven在私有工件库上部署的 每次使用现有版本号部署库时,它都会添加一个新的jar,并在末尾添加一个增量号 例如,这里是my.m2/repository/my domain/processor的内容: 我曾经用processor-1.4-4.jar构建过我的应用程序,但现在版本是1.4-12.jar。我希望maven能够识别出他们的是单个库的多个jar,并获取最新的jar 我所尝试的: 再同步依赖 mvn清洁
处理器。
这个库是使用maven在私有工件库上部署的
每次使用现有版本号部署库时,它都会添加一个新的jar,并在末尾添加一个增量号
例如,这里是my.m2/repository/my domain/processor的内容:
我曾经用processor-1.4-4.jar
构建过我的应用程序,但现在版本是1.4-12.jar
。我希望maven能够识别出他们的是单个库的多个jar,并获取最新的jar
我所尝试的:
- 再同步依赖
mvn清洁
mvn包
mvn编译
mvn安装
- 重建项目
但是它总是使用1.4-4
jar,而不是1.4-12
1
这是告诉maven获取最新罐子的一种方式吗?
还是使用同一版本多次部署是错误的
感谢您的帮助。根据您的描述,您构建了一个版本为1.4-SNAPSHOT
的jar。这是一个开发版本,您可以从中部署任意数量的组件。每个新部署都以新的时间戳存储在Artifactory中
当您在项目中添加引用1.4-SNAPSHOT
的依赖项时,您将在Artifactory中获得这些版本中的最新版本(除非您在本地构建新版本)。由于@JF Meier对
解决方案是mvn包-U
+重新导入maven依赖项。删除和重新导入依赖项可以解决问题,但我现在想知道它们是否是处理此问题的更好方法,以及/或者是否是一种不好的做法。谢谢。添加的日期意味着它是快照版本,而不是稳定版本。稳定的发布可以通过maven发布插件来执行,也可以通过在pom.xml中上传一个没有-snapshot的处理器jar版本来执行。实际上,我在执行mvn包时得到了1.4-snapshot的版本“4”,这不是最新版本。最新的时间戳是1.4-SNAPSHOT
的版本“12”。事实上,我知道这是一个开发版本,它的目的是因为库仍处于alpha阶段。mvn package-U
+重新导入maven依赖项是我的窍门。谢谢