Eclipse のプロジェクトには、おおよそ次のフォルダーが表示されます。
application
- src
- JRE System Library [1.6]
- Referenced Libraries
- lib
- rsc
私たちのプロジェクトでは、File > Export... > Executable JAR を使用したいと考えています。
これで問題なく動作しますが、いくつかの例外があります。application.jar を実行する場合は、引き続き rsc/ フォルダーを application.jar と同じ場所にコピーする必要があります。
rsc/ には、さまざまな部分を分離するための別のフォルダーがあります。基本的に、コードを使用してピースをロードします (少し変更されていますが、パス スタイルは正しいです)。
strUrl = "file:rsc/properties/Constants.properties";
url = new URL(strUrl);
ImageIcon icon = new ImageIcon(url);
rsc/ > Build Path > Use as Source Folder を右クリックできます。
しかし、Eclipse は rsc フォルダーを bin/-folder に自動的にコピーしないため、これも機能しません。そして、ターミナルからはもう実行できません(jarにパッケージ化されていません)
EDIT : Eclipse がこれを正しく処理できないのはなぜですか? 「ネストされた」出力フォルダに問題があるのはなぜですか? [ビルド パス] ダイアログの [ソース] タブで、出力フォルダーを bin/rsc/ に設定して rsc/-フォルダーを簡単に追加できましたが、ネストされたフォルダーを配置することはできないようです...
EDIT 2 : これで、ant を使用してビルドするための xml ファイルを作成することができ、何とか rsc フォルダーを jar ファイルに含めることができました。同じエラーのため、まだ実行されません。リソース パスが JAR 内にあるかどうかに関係なく、本当にリソース パスを確認する必要がありますか? JAR のコンテンツは次のようになりました。
META-INF/
META-INF/MANIFEST.MF
configurator/
controller/
editor/
gui/
logic/
networking/
rsc/
rsc/gamesettings/
rsc/levels/
rsc/pics/
rsc/properties/
util/
しかし、Java は依然として私を嫌っておりjava.io.FileNotFoundException: rsc/properties/Constants.properties
、約 100 行のスタック トレースをスローします。
誰もそれを行う方法を考えていますか? thx&よろしく