我想使用 maven-replacer-plugin 在我的index.html文件中重命名我的javascript import语句。
但是我只想在路径以app
index.html代码段
...
<!-- rename this one to app/something12345.js -->
<script src="app/something.js"></script>
<!-- leave this one as it is -->
<script src="vendor/angular.js"></script>
...
到目前为止,在我的pom.xml中,我有maven-replacer-plugin
的配置 <plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.2</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<file>target/${project.build.finalName}/index.html</file>
<replacements>
<replacement>
<token>(\.js")</token>
<value>12345.js"</value>
</replacement>
</replacements>
</configuration>
</plugin>
目前,这显然会取代所有.js
次匹配。
我可以在<token>
部分添加一些神奇的咒语来实现这一目标吗?
答案 0 :(得分:6)
我设法使用以下
执行此操作<replacement>
<token>((app/)(.)*)(\.js")</token>
<value>$112345.js</value>
</replacement>
虽然在我的实际应用程序中,我将12345
替换为${buildNumber}
变量,因此语法为
<replacement>
<token>((app/)(.)*)(\.js")</token>
<value>$1${buildNumber}.js</value>
</replacement>
我希望这可能使解决方案更容易理解