私は、多くの小さなモジュール式プロジェクトを構築することによって、大きなJavaプロジェクトを構築しようとしています。それぞれの小さなプロジェクトが完全に自己完結型であり、そのすべてのリソース(画像など)を保持していることを望んでいます。
私はEclipseを使用しています。モジュラープロジェクトの1つを追加するようにビルドパスを構成すると、リソース参照が機能しません。システムは、指定されたファイルを見つけることができません。jarをエクスポートして、ビルドパスの構成の[ライブラリ]タブに含めると、同じことが起こります。
私はいくつかの実験を行いましたが、それを機能させる方法を見つけることができませんでした。リソースのソースフォルダを使用して、次のものを使用してみました。
// this works if resource is located in package alongside class file,
// not where I want it
getClass().getResourceAsStream("resource.abc")
また
new FileInputStream("path/to/resource.abc")
たぶん私はプロジェクトがどのように構成されているかについて何かが欠けています。私は常に、IDE内の単一のプロジェクトから問題なくリソースを機能させることができました。複数のプロジェクトをリンクしたり、それらをjarとして含めたりする場合の違いは何ですか?
私の理想的な構造は、プロジェクトのルートにあるsrcフォルダーと同じレベルに、ソースコードとは別にすべてのリソースを含む別のフォルダーを作成することです。これは、プロジェクト/jarをリンクしようとするすべての問題の前に設定された方法です。