基本操作
版本管理
- 更改版本
mvn versions:set -DnewVersion=0.0.1-SNAPSHOT
JAR依赖树结构
控制台查看:
# 基本信息
mvn dependency:tree
# 冲突信息
mvn dependency:tree -Dverbose
导出到文本:
# 基本信息
mvn dependency:tree > tree.txt
# 冲突信息
mvn dependency:tree -Dverbose > tree.txt
打包源码
需要在项目自己的pom.xml文件中配置,父类的配置不生效
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<phase>verify</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
生命周期
有了生命周期,就可以将各种maven插件的执行时间绑定在某个生命节点上。
clean生命周期
- pre-clean :执行清理前的工作;
- clean :清理上一次构建生成的所有文件;
- post-clean :执行清理后的工作
default生命周期
- validate
- initialize
- generate-sources
- process-sources
- generate-resources
- process-resources :复制和处理资源文件到target目录,准备打包;
- compile :编译项目的源代码;
- process-classes
- generate-test-sources
- process-test-sources
- generate-test-resources
- process-test-resources
- test-compile :编译测试源代码;
- process-test-classes
- test :运行测试代码;
- prepare-package
- package :打包成jar或者war或者其他格式的分发包;
- pre-integration-test
- integration-test
- post-integration-test
- verify
- install :将打好的包安装到本地仓库,供其他项目使用;
- deploy :将打好的包安装到远程仓库,供其他项目使用;
site生命周期
- pre-site
- site :生成项目的站点文档;
- post-site
- site-deploy :发布生成的站点文档
推送到仓库
详情查看:Maven deploy 上传jar包到私服的方法及其配置文件
推送maven项目
先配置好 settings-adolphor.xml
配置文件: 配置多个profile:jdk-1.8, adolphor-nexus, rdc-nexus, 上传的时候通过 -P
参数指定使用哪个profile即可:
# 启用 adolphor,停用 rdc
mvn deploy -D skipTests --settings /Users/adolphor/.m2/settings-adolphor.xml -P adolphor,!rdc
# 停用 adolphor,启用 rdc
mvn deploy -D skipTests --settings /Users/adolphor/.m2/settings-adolphor.xml -P !adolphor,rdc
推送普通jar包
mvn install:install-file -DgroupId=com.wlwx -DartifactId=wlwx-sms-sdk -Dversion=1.1.0 -Dpackaging=jar -Dfile=/Users/adolphor/Downloads/wlwx-sms-sdk-1.1.0.jar
mvn deploy:deploy-file -DgroupId=com.wlwx -DartifactId=wlwx-sms-sdk -Dversion=1.1.0 -Dpackaging=jar -Dfile=/Users/adolphor/Downloads/wlwx-sms-sdk-1.1.0.jar -Durl=http://maven.adolphor.com/repository/maven-releases/ -DrepositoryId=adolphor-releases
groupId=com.adolphor.android
artifactId=link-library
version=1.0-SNAPSHOT
packaging=aar
file=/Users/adolphor/Downloads/temp/adolphorlibrary-release.aar
mvn deploy:deploy-file -DgroupId=$groupId -DartifactId=$artifactId -Dversion=$version -Dpackaging=$packaging -Dfile=$file -Durl=http://maven.adolphor.com/repository/maven-snapshots/ -DrepositoryId=adolphor-snapshots
参考资料
文档信息
- 本文作者:Bob.Zhu
- 本文链接:https://adolphor.com/2018/04/08/maven-foundation-tutorial/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)