我打算将 src 目录中的某些文件的内容替换到 war 中,而不更改 Src 目录中的文件。所以我正在使用 maven-replacer-plugin
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>maven-replacer-plugin</artifactId>
<version>1.3.2</version>
<executions>
<execution>
<!-- the replace should happen before the app is packaged -->
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<includes>
<!-- replace the token in this file -->
<include>target/**/*.html</include>
</includes>
<regex>false</regex>
<!-- the name of the token to replace -->
<token>BUILD_TIME</token>
<!-- replace it with the maven project version -->
<value>${timestamp}</value>
</configuration>
在准备包阶段,我看到文件在目标目录中被替换。我通过运行 mvn prepare-package 来确认这一点,我看到 BUILD_TIME 被构建时间替换。但是当执行包阶段时,来自 src 目录的内容将被替换。从下面的屏幕截图中,我可以看到在 prepare-package 之后的下一个阶段中,正在从导致问题的 src 目录中复制 Web 应用程序资源。
我尝试在打包阶段使用这个插件也没有成功(我能够在目标目录的 html 中看到构建时间,但在战争中看不到)。