我创建了一个名为“dist”的额外目标目录,我正在复制一些构建工件。因为它不在默认目标目录中,所以我根据插件的Delete Additional Files说明添加了一个适当的clean插件配置,如下所示:
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<configuration>
<fileset>
<followSymlinks>false</followSymlinks>
<directory>dist</directory>
<includes>
<include>*</include>
</includes>
</fileset>
</configuration>
</plugin>
但是“dist”目录及其内容在任何“mvn clean”之后仍然存在。我尝试了很多变种,并检查了“mvn help:effective-pom”或“mvn -X”调试输出的输出,我发现:
<directory>${basedir}/dist</directory>
这样的明确引用没什么区别。<include>
引用,例如“ .jar”或“ * / * .txt”没有任何区别。我正在使用maven 3.0.3,干净的插件2.5。我试过2.4,以防万一。没有不同。此外,没有许可问题。
我在Google上扫描过几十个例子,而且只是重复文档的说明。我对Maven比较新,还在学习。我对明显的东西视而不见吗?感谢。
答案 0 :(得分:2)
您需要在<fileset>
代码
<filesets>
标记
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>dist</directory>
</fileset>
</filesets>
</configuration>
</plugin>
答案 1 :(得分:1)
概,
这是一个有效的工作:
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<configuration>
<filesets>
<fileset>
<followSymlinks>false</followSymlinks>
<directory>${basedir}</directory>
<includes>
<include>dist/**</include>
<include>target</include>
</includes>
</fileset>
</filesets>
</configuration>
答案 2 :(得分:0)
尝试使用而不是:
<includes>
<include>*</include>
</includes>
像
这样的东西 <includes>
<include>**/*.*</include>
</includes>
使用Maven 2.2.1
对我有用答案 3 :(得分:0)
这将有效:
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<configuration>
<fileset>
<followSymlinks>false</followSymlinks>
<directory>${basedir}</directory> <!-- Careful with this -->
<includes>
<include>dist</include>
<include>target</include>
</includes>
</fileset>
</configuration>
</plugin>