maven install与maven build的区别是什么?
Maven build 等同于Maven命令;
mvnpackage表示对Maven工程进行打包。
Maven Clean等同于Maven命令;
mvnclean表示删除maven工程的target目录下的内容。
Maven Install等同于命令;
mvninstall表示将jar包发布到本地maven仓库。
首先需要理解maven的生命周期与插件目标这两个概念:
拿Maven clean来说吧。生命周期为clean,插件目标为maven-clean-plugin:clean。
Maven build是这个插件让你自己去配置执行目标的。
Maven clean 清除上一次Maven执行的结果,
Maven generate-sources会根据pom配置去生成源代码格式的包,
Maven install将项目输出构件部署到本地仓库。
不必太过于关注build工作的实现细节。我们只需要使用一些build生命周期短语就可以达到我们的目标,而不必管Maven是如何做到这些的。如:只需要告诉Maven要安装(install),那么它自然就会验证,编译,打包,及安装。
Dependency:为了能够build或运行,一个典型的Java工程会依赖其它的包。在Maven中,这些被依赖的包就被称为dependency。dependency一般是其它工程的artifact。
Plug-in:Maven是由插件组织的,它的每一个功能都是由插件提供的。插件提供goal(类似于Ant中的target),并根据在POM中找到的元数据去完成工作。主要的Maven插件要是由Java写成的,但它也支持用Beanshell或Ant脚本写成的插件。
Repository:仓库用于存放artifact,它可以是本地仓库,也可以是远程仓库。