2011-10-10 85 views
26

所以我有一个项目,我会定期发布给maven而不会有任何问题。我现在想要提供此项目的SNAPSHOT版本。所以我做'清洁部署'。一切正常,你可以看到如下:如何从Maven SNAPSHOT存储库下载SNAPSHOT版本?

[信息]检索来自Sonatype的-关系的快照之前的版本号 上传:https://oss.sonatype.org/content/repositories/snapshots/me/soliveirajr/menta-regex/0.9.6-SNAPSHOT/menta-regex-0.9.6-20111010.153035-2.jar 5K上传(MENTA正则表达式,0.9.6-20111010.153035-2.jar)

我去我Sonatype的经理,我能找到的快照: enter image description hereenter image description here

但现在当我尝试在另一台机器使用此快照作为一个依赖于其他一些项目我得到:

<dependency> 
    <groupId>me.soliveirajr</groupId> 
    <artifactId>menta-regex</artifactId> 
    <version>0.9.6-SNAPSHOT</version> 
</dependency> 

缺少:

1)me.soliveirajr:MENTA正则表达式中:jar:0.9.6-SNAPSHOT

尝试从项目网站手动下载该文件。

然后,使用该命令来安装它: MVN安装:安装文件-DgroupId = me.soliveirajr -DartifactId = MENTA正则表达式-Dversion = 0.9.6-SNAPSHOT -Dpackaging =罐子-Dfile = /路径/要/文件

另外,如果您自行库可以部署在那里的文件: MVN部署:部署文件-DgroupId = me.soliveirajr -DartifactId = MENTA正则表达式-Dversion = 0.9.6-SNAPSHOT -Dpackaging = jar -Dfile =/path/to/file -Durl = [url] -DrepositoryId = [id]

那么如何强制maven下载SNAPSHOT版本到我的本地(.m2)存储库?

回答

41

只需添加到您的〜/ .m2目录/ settings.xml中:

<profiles> 
    <profile> 
    <id>allow-snapshots</id> 
     <activation><activeByDefault>true</activeByDefault></activation> 
    <repositories> 
     <repository> 
     <id>snapshots-repo</id> 
     <url>https://oss.sonatype.org/content/repositories/snapshots</url> 
     <releases><enabled>false</enabled></releases> 
     <snapshots><enabled>true</enabled></snapshots> 
     </repository> 
    </repositories> 
    </profile> 
</profiles> 
+1

不错的例子,对于任何读者:请注意,如果您正在寻找JaCoCo最新快照,请不要犯同样的错误,并复制此示例。因为它是一个插件,他们有不同的回购。看到这个答案:https://stackoverflow.com/a/46682942/1546042 –

相关问题