如何使用Google Maven替换器插件替换字符串" $ {version}"?

时间:2014-06-24 19:51:12

标签: maven plugins replace maven-3

我正在使用Maven replacer插件的1.5.3版本。我想在我的属性文件中替换字符串“$ {version}”,该文件包含行

application.version=${version}

与实际<版本>在我的pom中定义的元素。我正在尝试这个,但没有成功:

                <execution>
                    <id>replace-application-version</id>
                    <phase>compile</phase>
                    <configuration>
                        <file>${project.build.outputDirectory}/application.properties</file>
                        <replacements>
                            <replacement>
                                <token>\${version}</token>
                                <value>${version}</value>
                            </replacement>
                        </replacements>
                    </configuration>
                    <goals>
                        <goal>replace</goal>
                    </goals>
                </execution>

我不知道如何正确地转义“&lt; token&gt;”块中的字符串“$ {version}”。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

要让Maven replacer插件查找字符串“$ {version}”作为标记而不用属性值替换它,您可以通过添加<regex>true</regex>将标记指定为正则表达式并将其保留为这样:

<execution>
    <id>replace-application-version</id>
    <phase>compile</phase>
    <configuration>
        <file>${project.build.outputDirectory}/application.properties</file>
        <regex>true</regex>
        <replacements>
            <replacement>
                <token>\$\{version\}</token>
                <value>${version}</value>
            </replacement>
        </replacements>
    </configuration>
    <goals>
        <goal>replace</goal>
    </goals>
</execution>