Nexus deploy时遇到RELEASE does not allow metadata的排查路程

摘要:
后来百度各种属性修改依然不行,配置文件检查N遍还是没发现问题。最后删除重建完成。归根究底还是对maven的管理掌握的不够透彻。

背景:

由于换了一家新单位,java工程上很多工具都没有部署,于是自己准备部署了一套nexus版本较新(伏笔)尝试从部署到使用一条路探雷然后给同事做培训。

按照正常的套路部署完以后配置maven setting文件;

核心配置

<servers>
<server>
<id>Robam_dkb_Release</id>
<username>admin</username>
<password>xxxx</password>
</server>
<server>
<id>Robam_dkb_SnapShort</id>
<username>admin</username>
<password>xxxx</password>
</server>
</servers>

<profiles>
<profile>
<id>nexusProfile</id>
<repositories>
<repository>
<id>central</id>
<url>http://xxxxx/repository/Robam_dkb_group/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexusProfile</activeProfile>
</activeProfiles>

pom文件配置

<distributionManagement>
<repository>
<id>Robam_dkb_Release</id>
<name>Robam_dkb_Release</name>
<url>http://xxxxx/repository/Robam_dkb_Release/</url>
</repository>
<snapshotRepository>
<id>Robam_dkb_SnapShort</id>
<name>Robam_dkb_SnapShort</name>
<url>http://xxxxx/repository/Robam_dkb_SnapShort/</url>
    </snapshotRepository>
</distributionManagement>

老公司的地址是http://xxxxx/nexus/content/groups/public/ 这样的地址 版本是老的

新版本的地址是http://xxxxx/repository/Robam_dkb_SnapShort 一开始是担心地址的问题

进入正题

maven deploy后出现

Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project component: Failed to retrieve remote metadata com.robam.cloud.component:component:0.0.1-SNAPSHOT/maven-metadata.xml: Could not transfer metadata com.robam.cloud.component:component:0.0.1-SNAPSHOT/maven-metadata.xml from/to Robam_dkb_SnapShort (http://xxxx/repository/Robam_dkb_SnapShort2/): Transfer failed for http://xxxxx/repository/Robam_dkb_SnapShort2/com/robam/cloud/component/component/0.0.1-SNAPSHOT/maven-metadata.xml 400 Repository version policy: RELEASE does not allow metadata in path: com/robam/cloud/component/component/0.0.1-SNAPSHOT/maven-metadata.xml

因为新版本的index地址其实是http://xxxxx/service/rest/repository/browse/Robam_dkb_SnapShort/所以我尝试替换地址试试,然后deploy出现了405 Method Not Allowed 直接405了更不对了

然后仔细再看报错发现0.0.1-SNAPSHOT版本这么会提示RELEASE does not allow metadata呢哪里的对应关系搞错了?

后来百度各种Nexus deploy时遇到RELEASE does not allow metadata的排查路程第1张属性修改依然不行,配置文件检查N遍还是没发现问题。后来发现仓库新建的时候有个Nexus deploy时遇到RELEASE does not allow metadata的排查路程第2张的属性,坑爹,预发布仓库选成了稳定仓库。最后删除重建完成。

总结:其实这个问题回过头冷静下来想想就该知道,deploy发布既然有预发布和稳定的区别,创建仓库的时候就应该注意,属性的编辑。归根究底还是对maven的管理掌握的不够透彻。以前是衣来伸手饭来张口使用即可,别人都已经给你把路打平,现在必须要深入一点了解才行。

免责声明:文章转载自《Nexus deploy时遇到RELEASE does not allow metadata的排查路程》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇架构之美阅读笔记之二Python3下利用JsonPath解析数据下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

C# 如何提取SaveFileDialog的保存路径

直接使用代码1publicTestOne()2{3InitializeComponent();4SaveFileDialog();//调用打开SaveFileDialog保存对话框5}67#区域保存对话框8privateevoidSaveFileDialog()9{10//startlocalFilePath,fileNameExt,newFileName,...

CorelDRAW 编写和运行宏指令

在开发和运行CorelDRAW宏之前,必须安装VBA组件。在CoerlDRAW11和12中安装CorelDRAWVBAVBA是典型安装的一部分。2如果安装开始,请单击安装CorelDRAW12 Graphics Suite。CorelDRAWVBA工具栏CorelDRaw工具栏提供了几个快速的VBA函数和对VB编辑器的访问。但是,您可以通过在CorelDRA...

java报表实现excel一样冻结表头的功能

增加了几个新的指标,后台sql改了,拿过来只须在一个dao类中修改就足够了,可恨的是客户又提出来改报表表样,加个类似excel冻结表头的功能。...

关于WINFORM中输入法的设置

关于WINFORM(转移到)John Suna的专栏开发中输入方法的设置,它碰巧遇到了这种问题。网络真的很好:)这是文本集。感谢作者的辛勤工作给您带来的便利。在WINFORM中,我们经常遇到这样的问题:文本输入框中的输入法被禁用或总是更改为全宽输入法。查阅相关数据后,总结如下:(1)Control.ImeMode属性:获取或设置控件的输入方法编辑器模式。此模...

微信支付服务商模式支付与普通微信支付的配置区别

chapter=7_7&index=5注:与普通微信支付相比,源代码是上述7/8之间的区别,其他可以看作是服务提供商自己的微信支付配置;...

Oracle11g温习-第七章:redo日志

thread:线程,在单实例的环境下,thread#永远是1sequence:日志序列号。在日志切换时会递增。FIRST_CHANGE#:在当前日志中记录的首个数据块的scn。...