0

アセット フォルダーにプロパティ ファイルがあり、プロジェクトのビルド時にこのプロパティ ファイルの値をオーバーライドしたいと考えています。mvn clean install -Durl= https://xyx.xomのように?

例: assets/my_prop.properties

#  my_server_url=http://www.test.com/ 
change to 
my_server_url=${url}

ビルド時に my_server_url の値を置き換えたい: mvn clean install -Durl= http://xys.com

しかし、それは置き換えではありません。buid を実行するときに my_server_url を置き換えるにはどうすればよいですか

4

1 に答える 1

0

Pom の<build>ノード内で、次のようにフィルタリングを有効にする必要があります。

<build>
    <resources>
        <resource>
            <directory>assets</directory>
            <filtering>true</filtering>
            <includes>
                <include>**/*.properties</include>
            </includes>
        </resource>
        <resource>
            <directory>assets</directory>
            <filtering>false</filtering>
            <excludes>
                <exclude>**/*.properties</exclude>
            </excludes>
        </resource>
    </resources>

    ...

</build>

それが完了したら、次を実行してテストできます。

mvn resources:resource -Durl=http://www.test.com/

アセットディレクトリにある可能性のあるバイナリファイルを Maven でフィルタリングしたくないため、excludes 部分があることに注意してください。その部分がない場合は、通常、バイナリ ファイルをフィルタリングしようとすることで、バイナリ ファイルが破損してしまいます。

これが構成されている方法では、フィルタリングされたプロパティ ファイルがターゲット/クラスに入りますが、これはおそらく望ましくありません。<targetPath>これは、ノードを追加することで変更できます。リソースの構成に関する注意事項については、このリンクを参照してください。

于 2011-09-08T18:49:47.393 に答える