备案网站,wordpress阅读数,做的网站上更改内容改怎么办,WordPress配置全站加速cdn我们在用maven构建java项目时#xff0c;最常用的打包命令有mvn package、mvn install、deploy#xff0c;这三个命令都可完成打jar包或war#xff08;当然也可以是其它形式的包#xff09;的功能#xff0c;但这三个命令还是有区别的。下面通过分别执行这三个命令的输出结…我们在用maven构建java项目时最常用的打包命令有mvn package、mvn install、deploy这三个命令都可完成打jar包或war当然也可以是其它形式的包的功能但这三个命令还是有区别的。下面通过分别执行这三个命令的输出结果来分析各自所执行的maven的生命周期。
MVN CLEAN PACKAGE MVN CLEAN INSTALL MVN CLEAN DEPLOY忽略最后的BUILD FAILURE 通过三个命令的输出我们可以看出三者的区别在于包函的maven生命的阶段和执行目标(goal)不同。在我的上一篇文章https://blog.csdn.net/zhaojianting/article/details/80321488 中介绍了maven的生命周期和各种插件不明白的请参考此博文。maven生命周期lifecycle由各个阶段组成每个阶段由maven的插件plugin来执行完成。生命周期lifecycle主要包括clean、resources、complie、install、pacakge、testResources、testCompile、deploy等其中带test开头的都是用业编译测试代码或运行单元测试用例的。
仔细查看上面的输出结果截图可以发现
mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等个阶段。mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等个阶段。
由上面的分析可知主要区别如下
package命令完成了项目编译、单元测试、打包功能但没有把打好的可执行jar包war包或其它形式的包布署到本地maven仓库和远程maven私服仓库install命令完成了项目编译、单元测试、打包功能同时把打好的可执行jar包war包或其它形式的包布署到本地maven仓库但没有布署到远程maven私服仓库deploy命令完成了项目编译、单元测试、打包功能同时把打好的可执行jar包war包或其它形式的包布署到本地maven仓库和远程maven私服仓库
在TARGET 目录下可找到 JAR包 注 此方式打出来的是没有加入依赖包的
maven要打依赖包需要添加插件 buildpluginspluginartifactIdmaven-assembly-plugin/artifactIdconfigurationarchivemanifest!--main主类的全类名--mainClassmain.Class/mainClass/manifest/archivedescriptorRefsdescriptorRefjar-with-dependencies/descriptorRef/descriptorRefs/configurationexecutionsexecutionidmake-assembly/id!--指定在打包节点执行jar包合并操作, 使用package就可以打出全量包--phasepackage/phasegoalsgoalsingle/goal/goals/execution/executions/plugin/plugins
/build