Java デスクトップ アプリケーションを開発しており、外部の configuration.xml が必要です。
私は Netbeans を使用してアプリケーションを開発しており、アプリケーションの作業フォルダーに存在するように、dist ディレクトリに configuration.xml ファイルを追加しようとしました。しかし、Netbeans が clean 操作を実行すると、dist ディレクトリ
が削除されます。この configuration.xml ファイルが削除されず、アプリケーションの起動ディレクトリに存在するようにするには、どこに配置すればよいでしょうか。
3 に答える
これを build.xml に追加できます:
<target name="-post-jar">
<copy todir="${dist.jar.dir}">
<fileset dir="resources" includes="**"/>
</copy>
</target>
これで、configuration.xml ファイルをプロジェクトの "resources" フォルダー (作成する必要があります) に配置できます。その中のすべてのファイルは、ビルド プロセス中に dist フォルダーにコピーされます。
正しいコード...
<target name="-pre-jar">
<echo>Copying resources files to build directory...</echo>
<mkdir dir="${dist.jar.dir}/resources"/>
<copy todir="${dist.jar.dir}/resources">
<fileset dir="resources" includes="**"/>
</copy>
</target>
これをメインの build.xml に追加します (nbproject\build-impl.xml ではありません)。「-pre-jar」を「-post-jar」に置き換えることもできます
これを機能させることはできましたが、メインのビルド構成で依存関係として明示的に入力しないと、-post-jar をトリガーできませんでした。これは、Rich Client プロジェクトの Netbeans 7.0.1 にあります。
代わりに、外部リソース ファイル (主に、ユーザーが後で編集できる可能性のある .txt ファイル) が必要な Netbeans モジュールの build.xml に、次のように入力しました。
<target name="netbeans-extra">
<echo>Copying resources files to build cluster directory...</echo>
<mkdir dir="${cluster}/resources"/>
<copy todir="${cluster}/resources">
<fileset dir="resources" includes="**"/>
</copy>
</target>
次に、モジュールのトップ ディレクトリ (src、release、build のすぐ横) に「resources」という新しいディレクトリを作成し、そこに .txt ファイルを配置します。
このモジュールでビルドを行うと、依存関係として netbeans-extra が呼び出され、メイン プロジェクトの build/cluster ディレクトリに「resources」フォルダの作成が実行され、続いてプロジェクトの resources ディレクトリの内容がそこにコピーされます。 .
最終的に、プロジェクトのディストリビューションをビルドすると、プロジェクトのモジュール ディレクトリのすぐ隣にリソース ディレクトリが配置され、きれいに並んだ配置になります。