如何在通常的Maven清洁阶段之外删除项目文件夹



这听起来可能有点偏离,但这是我想要的;

我有一个项目,该项目在目标目录中生成文件(每个普通项目)。我已经配置了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命令来偶尔删除这两个特殊文件夹。我该怎么做?

您可以考虑添加 profile 在其中设置其他clean进程:

<profiles>
  <profile>
  <id>cleanLogs</id>
  <build>...</build>
  </profile>
</profiles>

使用mvn clean -PcleanLog调用它会调用特定的构建过程。
另请参见有关Maven Croiles的本教程。

相关内容

最新更新