Как прочитать файл внешних свойств в Maven

Кто-нибудь знает, как читать файл x.properties в Maven. Я знаю, что есть способы использовать фильтрацию ресурсов, чтобы читать файл свойств и устанавливать значения из этого, но мне нужен способ в моем pom.xml, например:

<properties file="x.properties"> 

</properties>

Было некоторое обсуждение об этом: Внешние свойства Maven

Ответ 2

Используя предлагаемый плагин свойств 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>

Ответ 3

Этот ответ на аналогичный вопрос описывает, как расширить плагин свойств, чтобы он мог использовать удаленный дескриптор для файла свойств. Дескриптор - это в основном артефакт jar, содержащий файл свойств (файл свойств включен в src/main/resources).

Дескриптор добавляется как зависимость от плагина расширенных свойств, так что он находится в пути класса plugin. Плагин будет искать путь к классам для файла свойств, читать содержимое файла в экземпляр Properties и применять эти свойства к конфигурации проекта, чтобы их можно было использовать в другом месте.