3

我有一个 Maven 项目,它是多个子项目的集合。该项目使用 maven javadoc 插件将所有子项目 javadoc 聚合到target/文件夹中的单个目录中。target/我想保留在 javadoc 页面中的文件夹中有一个附加文件。但是,每次我运行时clean,这个文件都会被删除。我想知道是否有办法删除整个目标目录并只留下一个文件。我的插件当前配置如下:

<plugin>
  <artifactId>maven-clean-plugin</artifactId>
    <execution>
      <executions>
        <id>default-clean</id>
        <configuration>
          <excludeDefaultDirectories>true</excludeDefaultDirectories>
            <filesets>
              <fileset>
                <directory>target</directory>
                <excludes>
                  <exclude>path/to/myFile.xml</exclude>
                </excludes>
                <followSymlinks>false</followSymlinks>
              <fileset>
           </filesets>
         </configuration>
       <phase>initialize</phase>
       <goals>
         <goal>clean</goal>
       </goals>
     </execution>
   </executions>
</plugin>

我在这里看到了一个类似的问题,但该解决方案似乎对我不起作用。

4

3 回答 3

2

我也有同样的需求,在使用插件玩了一段时间后,我找到了一个有效的解决方案,可以避免删除目标文件夹中的特定文件。

假设您不想删除文件夹do_not_delete中的target文件,此配置对我有用:

<plugin>
    <artifactId>maven-clean-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>
        <excludeDefaultDirectories>true</excludeDefaultDirectories>
        <filesets>
            <fileset>
                <directory>target</directory>
                <followSymlinks>false</followSymlinks>
                <useDefaultExcludes>false</useDefaultExcludes>
                <excludes>
                    <exclude>do_not_delete</exclude>
                </excludes>
            </fileset>
        </filesets>
    </configuration>
</plugin>
于 2017-08-23T07:45:11.857 回答
1

将该静态文件放在资源文件夹中,然后将其maven-resources-plugin复制到特定的目标文件夹中。

于 2012-10-25T08:24:05.443 回答
0

正如您所说,可以从您的项目中明确排除或包含文件。您对您提供的排除路径持肯定态度吗?

<filesets>
  <fileset>
    <directory>src/main/generated</directory>
    <followSymlinks>false</followSymlinks>
    <useDefaultExcludes>true</useDefaultExcludes>
    <includes>
      <include>*.java</include>
    </includes>
    <excludes>
      <exclude>MyPathRelativeToDirectoryTag/myFile.xml</exclude>
    </excludes>
  </fileset>
</filesets>
于 2013-06-10T13:30:58.750 回答