我的maven
项目打包war
,它只会被部署,而且本身不是对其他项目的依赖(换句话说,它是最终可部署的)。
问题:
mvn install
,除了mvn package
之外,只有localRepository
?答案 0 :(得分:2)
对于最终可部署的工件确实没有理由调用install
阶段而不是package
阶段:您想要构建.war
文件并且您没有'确实需要在本地存储库中安装它。
但是,您可能希望始终运行集成测试,如果有的话。看看default Maven lifecycle这些阶段发生 打包后
package
获取已编译的代码并将其打包成可分发的格式,例如JARpre-integration-test
执行集成测试之前所需的操作。这可能涉及诸如建立所需环境之类的事情 如果需要,integration-test
处理并将程序包部署到可以运行集成测试的环境中post-integration-test
执行集成测试后所需的操作。这可能包括清理环境verify
运行任何检查以验证包裹是否有效并符合质量标准install
将软件包安装到本地存储库中,以便在本地作为其他项目的依赖项使用。
因此,通过调用install
,您将确保始终执行集成测试。实际上,更短的调用将是
mvn clean verify
在这些情况下不太受欢迎但更有效。