如何在Maven插件配置中保留空格?

Lai*_*son 7 maven-2 maven-3 maven

我有一个名为的插件配置参数suffix.我希望用户能够指定一个换行符(通过按键产生的文字字符Return,而不是一些转义的变体,尽管我会得到它)作为该参数的值.

同时,参数有一个default-value设置.我想继续使用它.

如何在我的插件的配置节中指定suffix参数应采用换行符?

我试过这个:

<suffix><![CDATA[
]]></suffix>
Run Code Online (Sandbox Code Playgroud)

...还有这个:

<suffix>${line.separator}</suffix>
Run Code Online (Sandbox Code Playgroud)

...(那个实际上替换了正确的字符,但XML解析踩踏它)和这个:

<suffix><[!CDATA[${line.separator}]]></suffix>
Run Code Online (Sandbox Code Playgroud)

...还有这个:

<suffix>&x0d;</suffix>
Run Code Online (Sandbox Code Playgroud)

...还有这个:

<suffix xml:space="preserve">
</suffix>
Run Code Online (Sandbox Code Playgroud)

......一切都无济于事.具体来说,我看到了参数的默认值.

编辑:有趣的是,在Maven的内部人员有机会研究价值之前很久就会吃掉这个空白. mvn help:effective-pom将显示空格已被删除.在解析阶段早期删除前导,尾随和"仅"空白内容.

在我看来这很可能是一个bug,所以我已经提交了http://jira.codehaus.org/browse/PLX-461来跟踪它.

Eve*_*ert 5

codehaus 链接不再起作用,但我在 Maven 文档中发现,从 3.0.something 版本开始,您可以向任何您不想修剪的元素添加属性 xml:space="preserve" 。


Lai*_*son 1

根据说明,我通过向人们推荐以下 JIRA 来回答这个问题:https://issues.apache.org/jira/browse/MNG-5380(最初位于 http://jira.codehaus.org/browse/PLX- 461)。