mvn clean package是个什么鬼?

sh 'mvn clean package -Dfile.encoding=UTF-8 -DskipTests=true'

Java构建过程中,用到mvn clean package,那么这个命令是什么?执行之后又会发生什么?

其实可以理解它为一组命令的集合,执行哪些命令?顺序如何?

执行顺序:

1、使用清理插件:maven-clean-plugin:2.5执行清理删除已有target目录(版本2.5);

2、使用资源插件:maven-resources-plugin:2.6执行资源文件的处理(版本2.6);

3、使用编译插件:maven-compiler-plugin:3.1编译所有源文件生成class文件至target\classes目录下(版本3.1);

4、使用资源插件:maven-resources-plugin:2.6执行测试资源文件的处理(版本2.6);

5、使用编译插件:maven-compiler-plugin:3.1编译测试目录下的所有源代码(版本3.1);

6、使用插件:maven-surefire-plugin:2.12运行测试用例(版本2.12);

7、使用插件:maven-jar-plugin:2.4对编译后生成的文件进行打包,包名称默认为:artifactId-version,比如本例生成的jar文件:rtp-front-1.0-SNAPSHOT,包文件保存在target目录下(这个生成的包不能在命令行中直接执行,因为我们还没有入口类配置到Manifest资源配置文件中去,后续会阐述)。

执行结果:

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building rtp-front 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ rtp-front ---
[INFO] Deleting D:\xxxwork\Java\maven-test\target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ rtp-front ---
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ rtp-front ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding GBK, i.e. build is platform dependent!
[INFO] Compiling 13 source files to D:\CtripWork\Java\maven-test\target\classes
[WARNING] /D:/xxxwork/Java/maven-test/src/main/java/ReadOnly.java: 某些输入文件使用了未经检查或不安全的操作。
[WARNING] /D:/xxxwork/Java/maven-test/src/main/java/ReadOnly.java: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ rtp-front ---
[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory D:\xxxwork\Java\maven-test\src\test\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ rtp-front ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ rtp-front ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ rtp-front ---
[INFO] Building jar: D:\xxxwork\Java\maven-test\target\rtp-front-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.284 s
[INFO] Finished at: 2016-11-14T15:36:55+08:00
[INFO] Final Memory: 15M/77M
[INFO] ------------------------------------------------------------------------

总结:

不管是compile、package、install等前三个步骤都是必不可少的

全部评论

相关推荐

Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务