gpt4 book ai didi

maven-2 - Maven:删除的文件(antrun)仍在最终war文件中

转载 作者:行者123 更新时间:2023-12-02 04:17:14 24 4
gpt4 key购买 nike

我使用antrun插件来删除和移动一些属性文件,具体取决于所使用的配置文件:

<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<delete>
<fileset dir="${project.build.outputDirectory}/com/.../props">
<exclude name="pm-web-${profile.id}.xml" />
</fileset>
</delete>
<move file="${project.build.outputDirectory}/com/.../props/pm-web-${profile.id}.xml"
tofile="${project.build.outputDirectory}/com/.../props/pm-web.xml" />
</tasks>
</configuration>
</execution>
</executions>

当我检查target / classes文件夹时,可以看到已正确删除了“不需要的”属性文件,并且移动任务也已正确执行。但是,当我查看构建的war文件时,我看到已删除的文件仍在其中(在war中可以移动文件)。

我不知道这怎么可能。我认为 war 插件基本上会破坏目标文件夹?由于文件已从目标文件夹中正确删除,因此我也希望它们不会出现冲突。

让事情复杂化(对不起),我注意到删除有时会局部执行,这意味着:有时某些文件夹(并非全部)已“从 war 中删除”。

我尝试过更改任务的目标(没有运气),但是我认为大多数目标都是在发动 war 之前发生的。

谢谢你的帮助,
斯蒂金

最佳答案

war mojo在创建.war归档文件之前,先在${project.build.directory}/${project.build.finalName}目录中构建webapp。也许您的属性文件在添加antrun之前就已经存在。在那种情况下,从target/classes中删除属性文件并不会从${project.build.directory}/${project.build.finalName}中删除它们,并且这些文件仍然以最终的.war结尾。但是也许我猜得太多,我完全错了。清理所有内容后,看看是否可以重现该问题。

关于maven-2 - Maven:删除的文件(antrun)仍在最终war文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2311947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com