[Maven]Nexus自建伺服切换地址之后遇到的问题

背景:公司有自建的nexus伺服,需要从老的地址 http://svn.xxxx:8081 (老地址) 切换到新的域名 (http://nexus.xx)。 过渡期已经有一两年了,最近老地址的机器要退了,所以必须迁移到新机器,记录下遇到的问题。

Nexus 使用

公司内部的开发,测试,以及发布都统一的Nexus仓库,包括Java服务端,安卓。

下面说的502,是无法从老地址下载的一种统称

问题和解决

1 需要更怎么更新配置呢
主要包括repositories pluginRepositories 节点中url的变更

2 哪些地方需要更新配置呢?
算是checklist,需要自查下

  • RD QA的本地使用的电脑的 nexus settings.xml中的相关配置
  • 编译机中 setting.xml的相关配置
  • 检查项目中的 pom.xml 或者是 parent pom.xml 中是否配置了nexus的地址

也就是容易被人找来问到的

1 很难及时通知或者周知到所有人
地址切换从过渡期开始就发过多次邮件,老地址彻底下掉的时候通过 tech邮件组和IM广播也多次通知,还是有少部分同学没有修改。本地编译打包之后遇到502错误,来咨询。 这种情况告知就好,现在没有说能在maven或者idea的插件中能做到,主动通知更新。

  • 邮件,IM多次周知
  • CM或者DEV wiki中及时更新模版

2 项目pom 或者父pom中定义了nexus远程地址,导致502访问不到

这种通过生成 effective pom 或者通过IDE的插件来检查就好。有些部门或者项目确实这么定义的,可能是要同时对接几个内部的伺服,用来做区分的。

mvn help:effective-pom  -Doutput=effective_pom.xml

3 项目中的其他依赖Jar指向了老的nexus地址, 导致某些jar的依赖 502访问不到
也就是说,编译打包中的一个jar有问题,下载不到,又重定向到了老地址,需要配置下mirrors 下的 mirrorOf 属性为 *

        
                
                        TEST
                        TEST Public Mirror
                      http:/xxxx/nexus/content/groups/public
                        *
                
        

好了,就这些,比较小众的事情,希望对你又帮助。

你可能感兴趣的:(曾经的Java,maven,java,nexus)