2009-03-19 11 views
25

こんにちは。 .classファイルが与えられているが、私たちのコードに含めるソースではない学校のプロジェクトに取り組んでいます。私はEclipseを使用しています。私はそれをオブジェクトからインスタンス化して使用できるように、プロジェクトにファイルを含める必要があります。 Eclipseでプロジェクトに.classファイルを含めるにはどうすればいいですか? (Java)

ファイルがTokenizerImpl.classある、と私はこのようにそれを使用したい:私は私のプロジェクトフォルダにファイルを入れて、Eclipseは、私は手段を想定し、「TokenizeImplはタイプとして解決できない」と言うTokenizerImpl tokenizer = new TokenizerImpl(foo);

クラスまたはソースを見つけることができません。プロジェクトの「bin」フォルダに入れてみましたが、同じエラーが発生しました。 Googleの検索とSOの検索はこれに答えるようには見えなかったので、私はそれを撃つだろう。どのように私はこれを行うのですか、ああ賢明なもの?

編集:ああ、私は問題が完全に別のものであることを発見しました。これらのソリューションはうまくいきましたが、TokenizerImplが実装するTokenizerインターフェイスを作成するのを忘れてしまいました。 Doh。すべてのあなたの助けをありがとう、私は日食についてたくさん学んだ。

答えて

40

クラス・ファイルを含むディレクトリーをEclipseプロジェクトに追加することができます。作成されたディレクトリーまたは作成したEclipseプロジェクトのいずれかにある場合のみです。

これは、アプリケーションのJavaビルドパスにクラスフォルダを追加することで実行できます。これは、Javaビルドパス - >ライブラリ - >クラスフォルダの追加を選択すると、プロジェクトプロパティで設定できます。パッケージにクラスファイルを含むルートフォルダを指定する必要があることに注意してください。

したがって、コンパイラがプロジェクトAのクラスディレクトリにある(プロジェクトAのビルドパスにはない)com.stackoverflow.Example.classにアクセスするようにするには、 'classes'をaクラスフォルダとしてのクラス/ com/stackoverflowではありません。

+2

"パッケージに含まれるクラスファイルを含むルートフォルダを指定する必要があることに注意してください。" +1 –

0

他の人がより良い回答を得ました。この「答え」は、主にOPからの情報を得ることでした。なぜなら元の質問は、実際に試したことを完全にはわかっていなかったからです。現在、twoanswersがあり、長期的に質問に真に答えています。

私の元の答えは文脈のために残っています。

Eclipse内またはEclipse外のbinフォルダにコピーしましたか?これをEclipse外で実行した場合は、「bin」フォルダを右クリックし、Eclipse用に「refresh」を選択して新しいファイルを表示する必要があります。

binディレクトリの下の適切なフォルダ(パッケージによって異なる)の* .classファイルはそれを行うべきです。

+0

これはbinフォルダにありますが、適切なパッケージに追加するには何かする必要がありますか?ちょうどパッケージのフォルダに入れて、正しい? – jergason

+0

パッケージcom.stackoverflow.javacodeにある場合は、クラスファイルをbin/com/stackoverflow/javacode/ – Eddie

+0

に入れます。BEWARE:作業領域をクリーンアップすると、.classファイルはなくなります。 – dhiller

14

プロジェクト - >プロパティ - > Javaのビルドパス - >ライブラリ - >外部クラスフォルダの追加

あなたのクラスは、実際にそれがでなければなりませんfoo.bar.TokenizerImplである場合、すなわちパッケージ階層を、含まれている必要がありますフォルダサブディレクトリfoo/bar。

1

また、追加するクラスファイルをJARファイルに追加し、ビルドの依存関係にJARファイルを追加することもできます。私にとってこれは最もクリーンな解決策です。内部的には、JARファイルは正しいディレクトリ構造を持っていなければなりません。

プロジェクトに右クリックし、[Java Build Path]を選択して新しい依存関係を追加します。

コンパイルされたソースの結果を保持するため、binフォルダにコピーするとうまく動作しません。何かをきれいにするとすぐにファイルは消えてしまいます。

0

またはすべてをjarファイルに入れてこれを外部jarとして追加します。

関連する問題