1

.properties ファイルを eclipse プロジェクトのどこに配置すればよいか教えてください。それ用に別のフォルダーを作成しますか?プロジェクトを JAR 形式で簡単に配布できるようにしたいと考えています。

ありがとう。

編集:

どの OS でも、後で簡単に編集できるようにプロパティ ファイルを配置したいと考えています。

4

2 に答える 2

6

再展開せずに構成を簡単に変更できるようにするために私が使用するアプローチ。

プロジェクトのルートにあるプロパティ ファイルの 1 つのバージョン (既定値を使用)。私は常にアプリケーション パッケージ (foo.bar.myapp) に入れます。getResourceAsStream("/foo/bar/myapp/config.properties")クラスパッケージに関連するサンプルで、またはのようにデフォルトのものをロードします。

さらに、システム プロパティを用意します。

String configFileLocation = System.getProperty("config");

そして、プロパティとして渡された構成ファイルから読み取ったプロパティでデフォルトをオーバーライドするだけです。

例えば:

Properties props = new Properties();
props.load(Main.class.getResourceAsStream("mydefault.properties"));

System.out.println("default loaded: " + props);

String configFile = System.getProperty("config");
if (configFile != null) {
    props.load(new FileInputStream(configFile));
    System.out.println("custom config loaded from " + configFile);
}

System.out.println("custom override: " + props);

これにより、プロジェクトの下にあるfoo.barという名前のパッケージに保存されているリソースが最初に読み込まれmydefault.properties、その後、システム プロパティconfigが構成されている場合は、読み込まれたプロパティが参照されたパスで上書きされます。

システム プロパティは-Dパラメータを使用して設定できます。この場合は次のようになりますjava -Dconfig=/home/user/custom.properties foo.bar.Main。または、Web アプリケーション (Tomcat など) を使用している場合は、 を使用してこのプロパティを設定できますCATALINA_OPTS

于 2012-07-25T18:51:16.897 に答える
0

src/main/resource理想的な選択でしょう。

于 2012-07-26T17:41:36.120 に答える