私はEclipseで2つのプロジェクトを持ち、1つは 'main'機能を持つクラスを持っています。 このプロジェクトを「A」としましょう。 そしてこの 'main'関数では、別のプロジェクトでクラスをインスタンス化します。このプロジェクトとクラスBとCをそれぞれ呼び出してみましょう。クラス 'C'では、 'System.property( "user.dir") "を使用して、プロジェクト' B 'からRESOURCEFILEをロードしようとします。Eclipseでは、他のプロジェクトのリソースにどうやってアクセスできますか?
このアプリケーションをプロジェクト' A 'プロジェクトAには作業ディレクトリがあるのでプロジェクトBにあるRESOURCEFILEを開くことはできませんが、プロジェクトBにファイルを入れる必要があります。
私は何が最善ではありませんこの問題は解決し得るための方法。私は、このアプリケーションを実行しているときに、プロジェクトBの情報を渡す必要がありますか?私は完全に失われています。..
私が誰かの助けを待っています!
グラムim
1.システムプロパティを使用する代わりにクラスCで "classpath:resource"または他のタイプのアクセスを使用します。 – ffriend
答えていただきありがとうございます。「classpath:resource」に関するさらに詳しい情報を教えてもらえますか?また、「他のタイプのアクセス」の意味を教えていただけたら、それは素晴らしいでしょう。 – gim
私の答えは関連しています@Stephen Cのものに。あなたの場合、あなたはちょうどse 'YourClass.class.getResourceAsStream("/resource-package/resource-name.txt ")'を実行します。主要なJavaフレームワークを含む他のプロジェクトでは、他の関数を使用し、リソースを完全なURIとして指定する必要があります。つまり、http://url.of.resource.com "または" file:/// path/to/file "または" classpath:resource-name.txt "を使用します。しかし、あなたの' getResourceAsStream() '十分です。詳細については、[this](http://stackoverflow.com/questions/1464291/how-to-really-read-text-file-from-classpath-in-java)の質問をご覧ください。 – ffriend