Maven 2 Maven-如何在清理阶段删除文件夹的内容?
在我的项目中,我有一个名为Maven 2 Maven-如何在清理阶段删除文件夹的内容?,maven-2,maven,Maven 2,Maven,在我的项目中,我有一个名为war的文件夹。它最初是空的,并且处于版本控制之下。该文件夹在其包阶段由Maven填充,Eclipse的WST插件从该文件夹部署web应用程序 我想要的是在clean阶段删除war文件夹的内容,而不是文件夹本身。我该怎么做?到目前为止,我知道如何删除整个war文件夹: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven
war
的文件夹。它最初是空的,并且处于版本控制之下。该文件夹在其包阶段由Maven填充,Eclipse的WST插件从该文件夹部署web应用程序
我想要的是在clean
阶段删除war
文件夹的内容,而不是文件夹本身。我该怎么做?到目前为止,我知道如何删除整个war
文件夹:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<followSymLinks>false</followSymLinks>
<filesets>
<fileset>
<directory>${basedir}/war</directory>
</fileset>
</filesets>
</configuration>
</plugin>
org.apache.maven.plugins
maven清洁插件
2.4.1
假的
${basedir}/war
如何仅删除war
文件夹的内容,而不删除文件夹本身?我知道通过添加一些现有的排除项,文件夹将不会被删除。但是通常如何只删除文件夹的内容呢?您必须使用maven ant插件&添加任务以只删除文件夹内容。但是,为什么在版本控制中需要war文件?每次构建代码库时,都会显示有一些修改/新文件(生成的类)要签入。如果您使用的是标准maven约定,则目标文件夹将用于所有输出 将此包含部分添加到文件集定义中
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<filesets>
<fileset>
<directory>war</directory>
<includes>
<include>**/*</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
maven清洁插件
2.4.1
战争
**/*
假的
在我的例子中,我需要删除“bin”目录及其所有子目录内容。我在我的父母pom.xml中这样做:
<fileset>
<directory>${basedir}</directory>
<includes>
<include>**/bin/**</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
${basedir}
**/垃圾箱/**
假的
这在我的项目中找到了任何bin目录,并删除了bin文件夹的任何内容。如果要递归删除多个目录:
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>auto-clean</id>
<phase>clean</phase>
<goals>
<goal>clean</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>${basedir}</directory>
<includes>**/dir1/**</includes>
</fileset>
<fileset>
<directory>${basedir}</directory>
<includes>**/dir2/**</includes>
</fileset>
<fileset>
<directory>${basedir}</directory>
<includes>**/dir3/**</includes>
</fileset>
</filesets>
</configuration>
</execution>
</executions>
</plugin>
maven清洁插件
3.0.0
自动清洗
清洁的
清洁的
${basedir}
**/dir1/**
${basedir}
**/dir2/**
${basedir}
**/dir3/**
要从src/main/webapp/文件夹中删除文件夹,请使用:
<configuration>
<filesets>
<fileset>
<directory>src/main/webapp</directory>
<includes>
<include>folder/</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
src/main/webapp
文件夹/
假的
我已将Eclipse配置为使用war
文件夹(在部署程序集中),我希望签出项目的每个开发人员都拥有该文件夹,因此Eclipse配置是有效的。内容当然会添加到svn:ignore,并由Maven填充。对我来说,它只在添加部分后起作用,如下所述:put only**For还可以删除文件夹(问题要求删除内容,但访问此页面的用户可能希望删除文件夹和内容)这是怎么回事?已经有一段时间了,但是看看我上面的帖子,它进入了maven-clean-plugin的配置中。你缺少了里面的元素。