web-dev-qa-db-ja.com

Mavenで外部プロパティファイルを読み取る方法

Mavenでx.propertiesファイルを読み取る方法を知っている人はいますか。リソースフィルタリングを使用してプロパティファイルを読み取り、そこから値を設定する方法があることは知っていますが、pom.xmlには次のような方法が必要です。

<properties file="x.properties"> 

</properties>

これについていくつかの議論がありました: Maven External Properties

120
Dougnukem

Maven Properties Plugin を試してください

91
Mike Pone

提案された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>
50
Dougnukem

これは、同様の質問に対する answer であり、プロパティファイルにリモート記述子を使用できるようにプロパティプラグインを拡張する方法を説明しています。記述子は基本的に、プロパティファイルを含むjarアーティファクトです(プロパティファイルはsrc/main/resourcesに含まれています)。

記述子は、プラグインのクラスパス上にあるように、拡張プロパティプラグインへの依存関係として追加されます。プラグインは、プロパティファイルのクラスパスを検索し、ファイルの内容をPropertiesインスタンスに読み込み、それらのプロパティをプロジェクトの構成に適用して、他の場所で使用できるようにします。

4
Rich Seller