2014-10-28 65 views
0

我有我若在pom.xml中定義該物業的奇怪情況下的Maven插件資源並不在他們行家資源篩選不在其工作線與@

所以濾波器@

<test-heuser.servername>abcd</test-heuser.servername> 

和具有該線在我的資源

@(DESCRIPTION=(FAILOVER=ON)(ADDRESS=(HOST=${test-heuser.servername}) 

表達不是取代中的一個。我試圖從行中刪除@,它工作正常。這是一個錯誤還是某種形式的轉義序列已經發揮作用。

感謝

+0

它應該工作:) - 是否有另一個分隔符配置像插件文檔中提到的? http://maven.apache.org/plugins/maven-resources-plugin/resources-mojo.html - 你可以嘗試將變量放在不同的行上。我也不確定大括號是否全部正確。這可能會使解析器混淆? – wemu 2014-10-28 15:10:24

+0

僅限其默認值。 '@'本身就是一個分隔符,看起來分析器正在尋找它的匹配。是的,把'@'放在一個單獨的行中工作 – mzzzzb 2014-10-28 18:37:10

回答

1

默認的分隔符是 '@', '@' 和 '$ {', '}'。所以只是使用不同的:

<project> 
    ... 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-resources-plugin</artifactId> 
     <version>2.7</version> 
     <configuration> 
      ... 
      <delimiters> 
      <delimiter>$[*]</delimiter> 
      </delimiters> 
      ... 
     </configuration> 
     </plugin> 
    </plugins> 
    ... 
    </build> 
    ... 
</project> 
+0

我沒有意識到'@'本身就是一個分隔符。感謝您指出了這一點。 – mzzzzb 2014-10-28 18:38:32