背景
开发环境和测试环境共用一个nexus私服仓库,导致开发环境的API包和测试环境的API包发生了覆盖现象。因此比较好的解决方案是项目自动化构建时,项目的版本号能跟着环境变更。比如是开发环境,则项目的API包版本就形如1.0-dev,如果是测试环境,则项目的API版本就形如1.0-test
案例Demo演示
项目层级
方案一:mvn -Denv.project.version=1.0-env
env.project.version为自定参数变量,env为dev或者test
1、在maven项目的父级pom设置变量,形如下
<groupId>org.example</groupId>
<artifactId>demo-parent</artifactId>
<packaging>pom</packaging>
<version>${
env.project.version}</version>
<properties>
<env.project.version>1.0-SNAPSHOT</env.project.version>
</properties>
2、修改其子模块pom
<parent>
<artifactId>demo-parent</artifactId>
<groupId>org.example</groupId>
<version>${
env.project.version}</version>
</parent>
<modelVersion>4.0.0</modelVersi