如何在 Maven 中读取外部属性文件

有人知道如何在 Maven 中读取 x.properties 文件吗。我知道有一些方法可以使用资源过滤来读取属性文件并从中设置值,但是我想在 pom.xml 中使用这样的方法:

<properties file="x.properties">


</properties>

有一些关于这方面的讨论: Maven 外部属性

205660 次浏览

通过使用建议的 Maven 属性插件,我能够读取 buildNumber.properties 文件,并使用该文件对构建版本进行编译。

  <build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${basedir}/../project-parent/buildNumber.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
</plugins>

这个 回答到类似的问题描述了如何扩展属性插件,以便它可以使用属性文件的远程描述符。描述符基本上是一个 jar 构件,包含一个属性文件(属性文件包含在 src/main/resources 下)。

描述符作为一个依赖项添加到扩展属性插件中,因此它位于插件的类路径中。该插件将在类路径中搜索属性文件,将文件内容读入 Properties 实例,并将这些属性应用到项目的配置中,以便在其他地方使用。