运行mvn clean install
它将清理目标目录,编译并运行测试。
但是,除非明确说明,否则它不会运行任何清理选项?例如这不会清理目标目录
mvn install
因此,我经常清理干净以确保其始终新鲜。
如果我进行了代码更改,是否要检查新的代码更改是否需要始终进行清洁?
compile
是默认生命周期的一部分,当我键入mvn install
时,该生命周期会执行相同的操作吗?清洁的主要好处是什么?
答案 0 :(得分:1)
clean
目标将删除target/
或您指定的其他任何位置的输出文件。
增量编译是Maven中的一件事-这就是为什么其他目标不会自动假定clean
的原因-但通常认为它充其量是不可靠的。为了理智起见,最好始终clean
工作区,以免发生奇怪的类冲突。
答案 1 :(得分:1)
清理命令清理目标(您的项目构建位置)。
install 命令生成软件包并将其放入您的Maven本地存储库中,这也是其他项目可以将您的项目用作Maven本地存储库中的库的原因。
和 compile 只是编译项目的源代码。
因此,如果您使用 mvn clean install ,它将首先清理您的构建目录,然后编译您的项目并使用已编译的文件构建目标目录,然后将其放入您的maven本地存储库中。因此,您可以将项目文件从maven本地存储库中用于其他项目。
和 mvn clean compile 将首先清理您的构建目录,然后编译您的项目并使用已编译的文件构建目标目录