本文档中描述了以下功能:
可能需要过滤文件中的某些属性并忽略另一个。过滤机制不会触及无法识别的令牌(即表示未知属性)。如果该属性显然是已知的,那么这将不起作用,因此应该明确地对其进行转义。
以下配置定义了escapeString的值,如果它以该值开始,它将停止属性的插值
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<filtering>true</filtering>
<escapeString>\</escapeString>
[...]
</configuration>
</plugin>
</plugins>
</build>假设以下文件
jdbc.url=${db.url}
jdbc.user=${db.username}
jdbc.password=${db.password}使用此配置过滤此类文件的内容将产生此内容。请注意,如果需要,现在可以在以后以通常的方式过滤转义的属性!
jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl
jdbc.user=someuser
jdbc.password=${db.password}过滤二进制文件会损坏它们,因此可能需要根据扩展名从过滤中排除文件。为此,请按如下方式配置插件
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<filtering>true</filtering>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>png</nonFilteredFileExtension>
<nonFilteredFileExtension>jpeg</nonFilteredFileExtension>
</nonFilteredFileExtensions>
[...]
</configuration>
</plugin>
</plugins>
</build>