我正在使用maven进行构建,通常我们只使用maven命令mvn clean -Dmaven.test.skip=true package
来构建Web应用程序。我知道我们也可以使用mvn install
命令来构建Web应用程序。但是,任何人都可以向我提供这两个命令之间的确切区别吗?
我在clean和install命令上找到了一些注释。但我只是想知道使用mvn clean
命令而不是使用install
命令的优势是什么。
答案 0 :(得分:0)
正如here所述。
clean是Maven中自己的动作。 mvn clean install告诉Maven在为每个模块运行安装操作之前在每个模块中执行clean操作。
这样做可以清除您拥有的任何编译文件,确保您真正从头开始编译每个模块。
答案 1 :(得分:0)
Maven有 Maven阶段的概念。请仔细阅读this doc的Maven阶段。因此,当您运行阶段(比如maven阶段x)时,将执行直到该阶段的所有阶段(即阶段1到阶段x)。
您需要mvn clean
来清除先前构建所创建的工件。
。 mvn package
会将您的代码打包到POM中指定的格式。mvn install
还会将maven创建的包安装到本地存储库中。
另请注意,clean
和site
不属于默认生命周期的一部分,您必须在package
或install
命令之前触发它。不用说排序在这里很重要。
答案 2 :(得分:0)
mvn clean -Dmaven.test.skip = true package和mvn install之间的主要区别是第一个命令行清理目标目录和包而不运行测试第二个编译,测试,打包和安装jar或战争文件