当为xml文件使用Maven过滤器时,如何摆脱双重转义(`& amp;`)?

时间:2014-08-11 08:19:31

标签: java xml maven escaping

我使用Maven 3过滤器来完成xml文件中的占位符。但这需要插入的值(已经)xml转义。我想要的是:Maven在将它放入xml文件时负责转义值。

我有这样的表现:

摘录过滤的xml文件:

<Resource name="jdbc/dbConnection"
    url="${it.testDb.jdbc}"
    ...
    />

来自Maven pom的The Propery:

<it.testDb.jdbc>
       jdbc:mysql://localhost:3306/testdb?useUnicode=true&amp;amp;characterEncoding=utf8
</it.testDb.jdbc>

您注意到我必须使用&amp;amp;。这就是我想要摆脱的,而我只想写&amp;(第一个&amp;是因为Maven从XML文件(pom.xml)加载参数,没关系,但是只需要第二个amp;,因为Maven在写作时没有逃避字符串,这就是我想要摆脱的。)

因此,当过滤时将参数放入文件时,Maven是否有办法将值转义为xml样式?


要明确:我知道需要(第一个)&amp;,因为pom是一个xml文件(就像他在评论中提到的guido一样,人们可以通过使用{{1}来摆脱它}})。但我有兴趣摆脱所需的第二个<![CDATA[jdbc:mysql://localhost:3306/testdb?useUnicode=true&amp;characterEncoding=utf8]]>,因为目标文件是一个xml。 - 原因:假设我必须在xml中写入相同的值/占位符和一个txt文件,然后我需要两个不同的值(一个xml转义和一个未转义的)

0 个答案:

没有答案