Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven 2 覆盖Maven';s的默认资源筛选器替换模式_Maven 2_Filtering - Fatal编程技术网

Maven 2 覆盖Maven';s的默认资源筛选器替换模式

Maven 2 覆盖Maven';s的默认资源筛选器替换模式,maven-2,filtering,Maven 2,Filtering,默认情况下,maven将过滤如下所示的资源: <properties> <replace.me>value</replace.me> </properties> <some-tag> <key>${replace.me}</key> </some-tag> 价值 ${replace.me} 将为您提供: <some-tag> <key>value</k

默认情况下,maven将过滤如下所示的资源:

<properties>
  <replace.me>value</replace.me>
</properties>

<some-tag>
  <key>${replace.me}</key>
</some-tag>

价值
${replace.me}
将为您提供:

<some-tag>
  <key>value</key>
</some-tag>

价值
有没有办法覆盖maven选择要替换的字符串的方式?具体而言,我希望能够使用以下功能:

<some-tag>
  <key>@replace.me@</key>
</some-tag>

@代替我@
以获得与上面相同的结果。

请查看resources mojo的参数。这样配置插件可以实现以下目的:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.4.2</version>
  <configuration>
    <delimiters>
     <delimiter>${*}</delimiter><!-- to keep the default behavior -->
     <delimiter>@</delimiter><!-- to add Ant-like tokens style -->
    </delimiters>
  </configuration>
</plugin>

org.apache.maven.plugins
maven资源插件
2.4.2
${*}
@

如果您只想使用一种方法,请禁用默认delimeters:

<useDefaultDelimiters>false</useDefaultDelimiters>
<delimiters>
  <delimiter>@</delimiter>
</delimiters>
false
@

+1,如果官方文档告诉您即使在定义自己的文档时,您仍然必须关闭默认文档,那就太好了。