使用pom.xml proeprties填充环境属性文件

时间:2017-01-12 07:07:20

标签: java spring maven pom.xml

我想从pom.xml中获取artifactId并使用此artifactId来填充属性文件。

的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>xxxxx</groupId>
   <artifactId>fm-service</artifactId>
   <packaging>war</packaging>
   <version>x.x.x-SNAPSHOT</version>
</project>

application.preperties

email.subject = "ALERT - [artifactId from pom.xml]"

有可能吗?如果是,如果没有,那么请建议替代方案。

1 个答案:

答案 0 :(得分:3)

Maven提供了filter resources的方法。

首先,必须将文件application.properties放入src/main/resources目录。然后它的内容必须是:

email.subject = "ALERT - ${project.artifactId}"

最后(但并非最不重要)只需将此配置添加到您的POM:

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

现在将过滤资源目录中的所有文件,这意味着内部的所有变量都将被解析。