Continuous integration 如何在jenkins中的每个构建开始之前清理特定目录?
我通过java将jenkins与hudson cli一起使用。我想在每次构建之前清理一个特定的目录。有什么想法吗?我已经提供了maven命令clean包,它为每个构建清理目标文件夹。我想要的是在每次构建之前清理一些其他目录。如何做到这一点Continuous integration 如何在jenkins中的每个构建开始之前清理特定目录?,continuous-integration,hudson,integration,jenkins,Continuous Integration,Hudson,Integration,Jenkins,我通过java将jenkins与hudson cli一起使用。我想在每次构建之前清理一个特定的目录。有什么想法吗?我已经提供了maven命令clean包,它为每个构建清理目标文件夹。我想要的是在每次构建之前清理一些其他目录。如何做到这一点 在jenkins中,我指定了maven项目的URL,它将在构建时将文件下载到工作区。当我发出清理包命令时,它会在每次构建时清除目标文件夹。有另一个文件夹与目标文件夹平行。我想清除maven project中的文件夹如果您运行的是1.433版或更高版本,请使用项
在jenkins中,我指定了maven项目的URL,它将在构建时将文件下载到工作区。当我发出清理包命令时,它会在每次构建时清除目标文件夹。有另一个文件夹与目标文件夹平行。我想清除maven project中的文件夹如果您运行的是1.433版或更高版本,请使用项目配置部分中的前步骤/后步骤,分别位于构建部分的上方和下方 否则,请安装 您可以配置来处理清洗
如果您不能修改pom.xml,如下所述,您也可以使用它。您可以在每次生成之前添加一个作业来清理所需的目录。我用过ANT,不知道MAVEN。这也不会依赖于机器。我不确定我是否正确理解了这个问题,但如果您使用存储库轮询更改,并且在每次新构建之前,您确实从repo中提取所有文件项目,您可以使用名为“通过先删除模拟干净签出…”的选项之一这样,在每次生成之前都应该删除所有文件夹
如果不是这样的话,我想到的最简单的答案就是简单地编写一个CMD脚本,它只对不需要的文件/目录执行DEL命令,并将其作为windows批处理命令的前一步或后一步运行。在pom.xml中添加如下配置文件标记
<profiles>
<profile>
<id>ci</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>default-clean</id>
<phase>pre-clean</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
<configuration>
<filesets xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<fileset>
<directory>do_not_checkin/build</directory>
<includes>
<include>**/*</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
词
假的
maven清洁插件
2.5
默认清除
预清洁
清洁的
不签入/生成
**/*
假的
在执行commad时,只需执行maven命令mvn-Pci clean
它使用maven clean插件在每次构建开始之前清除特定目录
我们可以像mvn-Pci清洁包那样进行打包
清理目录后,将执行包阶段。您可以使用来准确执行此操作。哪个目录-它与您的构建(工作区、工件等)直接相关、完全无关还是半相关(即由构建中的参数、构建id等设置键控)?我添加了更多信息。谢谢。@BrandonV的解决方案对你有用吗?如果没有-请澄清原因。@kaleeswaran14-您能更新和/或标记答案吗?谢谢。再次更新了我的答案,以符合您的新要求。我试过了。我不知道怎么做?每次在构建开始之前,Maven项目的不同文件夹都必须被删除。您尝试了什么?不能只使用批处理/shell命令?请不要在不解释原因的情况下取消标记答案。在生成build的my maven项目中,目标文件夹被清除并重新生成。在jenkins中开始每个构建之前,我想清理/删除一个目录。所以在prestep中,我使用shell命令清除一个目录。它适用于Mac计算机,但不适用于windows计算机。我想清除/删除没有机器相关代码的目录。是否有其他方法?您可以配置来执行此操作。我已经更新了我的答案。我不能在pom.xml中做任何修改,我需要其他方法来清理jenkins本身的目录。想详细介绍一下这篇旧文章吗?