[英]Maven not loading SNAPSHOT from local repository
对于REST服务环境,我正在编写REST服务器应用程序以及客户端库,以便在服务器端和客户端使用相同的模型对象。
对于本地开发,如果我可以将本地maven存储库中的最新版本SNAPSHOT作为当前版本包括在内,那就太好了。
在我的pom.xml
中
<dependency>
<groupId>com.mygroup</groupId>
<artifactId>backoffice-client</artifactId>
<version>LATEST</version>
</dependency>
我的本地存储库包含版本1.0.0-SNAPSHOT
, 1.0.0
和1.0.1-SNAPSHOT
。
在这种情况下,导入的版本是1.0.0
但我希望它是1.0.1-SNAPSHOT
。
在gradle上,这可以通过使用compile(com.mygroup:backoffice-client:+)
。
我已经尝试在Maven命令行上设置-DignoreSnapshots=false
,但没有成功。
如何正确加载本地存储库中的最新快照?
那是因为您使用的是SNAPSHOT这个词,它是Maven的关键字。
如上所述这里 ,Maven的所有其他人不同的对待快照预选赛。 如果版本号后跟-SNAPSHOT,则Maven会将其视为关联的MajorVersion,MinorVersion或IncrementalVersion的“尚未发行”版本。
因此,对于Maven而言,“快照”不是最新的稳定版本,而当您告诉他采用最新版本时,它就是所需要的。
解决方法是将确切的版本号添加到依赖项中。
<dependency>
<groupId>com.mygroup</groupId>
<artifactId>backoffice-client</artifactId>
<version>1.0.1-SNAPSHOT</version>
</dependency>
对于为什么在添加LATEST时不能自动加载的问题,@ Leviand的解释是正确的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.