SOA治理系统中mvn版本号管理经验总结

版权声明:本文为博主总结文章,未经博主允许您依然可以转载。 https://blog.csdn.net/Memery_last/article/details/76359313

版本号

在SOA系统治理中,多系统之间使用RPC调用框架(dubbo)通信,通常会用到mvn两方包,那么mvn版本号何时进行升级,如何升级?

何时升级

  1. 请求对象结构变更;
  2. 请求对象新增;
  3. 接口方法签名更改;
  4. 接口方法新增;

升级版本的好处:
1. 可以不影响当前主干版本的小问题修复分支发布;
2. 清楚的知道版本之间的差异,可以提前预估新版本的影响范围;

如何升级

  1. 首先考虑升级版本后对历史服务的兼容性,以及影响到的应用!
  2. 工具使用mvn版本号管理插件
<plugin> 
  <groupId>org.codehaus.mojo</groupId>  
  <artifactId>versions-maven-plugin</artifactId>  
  <version>2.3</version>  
  <configuration> 
    <generateBackupPoms>false</generateBackupPoms> 
  </configuration> 
</plugin>
// 根据根POM的版本号修改各子模块的版本号
mvn -N versions:update-child-modules

// 注意一定要 deploy 根POM文件到私服
mvn deploy:deploy-file -DpomFile=pom.xml -DgroupId=com.alitrip.test -DartifactId=test-all -Dfile=./pom.xml -Durl=http://mvnrepo.alibaba-inc.com/mvn/snapshots -DrepositoryId=snapshots

技巧

  1. 所有的版本号交由根POM中的管理,方便统一修改版本号;
  2. 所有的子模块统一继承根POM的版本号
  <parent> 
    <artifactId>test-parent</artifactId>  
    <groupId>com.alitrip.parent</groupId>  
    <version>1.2-SNAPSHOT</version> 
  </parent>  
  <modelVersion>4.0.0</modelVersion>  
  <artifactId>test-service</artifactId>  
  <packaging>jar</packaging>  
  <name>test-service</name>  
  <url>http://maven.apache.org</url> 

猜你喜欢

转载自blog.csdn.net/Memery_last/article/details/76359313
今日推荐