这可能听起来有点不对,但这就是我想要的;
我有一个在我的目标目录中生成文件的项目(所以每个平均项目都是如此)。我已经使用下面的方法将maven clean配置为在每个构建中执行。
<build>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>auto-clean</id>
<phase>initialize</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
<plugins>
<build>
我还有一些目标以外的其他文件夹(我故意选择)存储日志和测试报告。这些我不希望在每次运行中都清理,因为我希望它们在一段时间内引用。
该项目大致如下所示。
Project
|--src/main/java
|--src/test/java
|--target
|--logs*
+--reports*
此处的日志和报告是我希望阻止在每次运行中删除的文件夹。 我能够管理报告和日志文件夹在每次运行中都没有被删除的部分。 (非常简单,不要提及构建中的两个文件夹)
但是,我还需要一个maven命令,偶尔删除这两个特殊文件夹。我怎么能这样做?
答案 0 :(得分:2)
您可以考虑添加 profile ,在其中设置不同的clean
流程:
<profiles>
<profile>
<id>cleanLogs</id>
<build>...</build>
</profile>
</profiles>
使用mvn clean -PcleanLog
调用它会调用该特定的构建过程
另请参阅this tutorial on maven profiles。