Maven常用命令备忘

1. 修改版本号 mvn versions:set -DnewVersion=1.0.1-SNAPSHOT


2. <relativePath>的默认值是../pom.xml,如果没有配置,则从../pom.xml开始找,找不到就去本地库找,然后是远程库
如果配置为<relativePath></relativePath>则表示不从工作空间找,直接找仓库


3. release的过程
1)构建一遍项目,确认项目可以构建
2)修改pom的版本到release的版本,提交代码并tag
3)check out 这个tag的代码,再构建一次,将jar包上传到maven仓库
4)修改pom文件的版本号到SNAPSHOT,再次提交代码
刚又仔细看了下jenkins里面的配置和日志发现release过程和上面的有差异,可能是上次看日志没有看得很明白
Jenkins配置
1.Pre Steps
1) 执行windows命令:git fetch --prune origin _refs/tags/*:refs/tags/*
git tag -a %GIT_TAG% -m ""
2) 执行maven命令:version:set -DnewVersion=${CURRENT_RELEASE_VERSION}
2.Build
执行maven命令:clean javadoc:jar source:jar ${CODE_COVERAGE_PLUGIN} install -P uberjar -Djavax.xml.accessExternalSchema=all
3.Post Steps
1) 执行windows命令:git add -u
git commit -m ""
git tag -f %GIT_TAG% -m ""
git push -u origin %GIT_BRANCH_NAME%
2) 执行maven命令:version:set -DnewVersion=${NEXT_SNAPSHOT_VERSION}-SNAPHOST
3) 执行windows命令:
git add -u
git commit -m ""
git push -u origin %GIT_BRANCH_NAME%
后面就是分发包到artifactory(这个过程不知道有什么用,没看到做什么事,实际上在Build完成后,就发布包到artifactory上了),跑sonar
日志执行过程
检出代码
1) 打tag, 接着修改版本到release版本
2) 执行maven构建
3) 提交版本变更到git, 更新一次tag, 接着更新版本到snapshot版本, 然后提交版本变更到git

4. <properties>里面的定义可以覆盖parent里面的定义,比如spring-boot里面依赖hibernate,version定义为hibernate.version,如果你想使用新的版本,在你的pom.xml里面定义<hibernate.version>**</hibernate.version>就可以了