web-dev-qa-db-ja.com

jarのEclipseでソースをアタッチします

Student.jarをEclipseのBuild Pathに追加しました

プロジェクト-> BuildPath->ビルドパスの設定->ライブラリ->外部Jarの追加を右クリックします

Student.jarファイルにはStudentTestという名前のクラスが1つあります。 Eclipseでコードをデバッグしているときに、Student.jarStudentTestクラスにステップインしました。

その後、Eclipseは次のように表示します。

JARファイルS:\some_location\Student.jarにはソース添付ファイルがありません。以下のソースを添付をクリックして、ソースを添付できます。

これで、Eclipseにソースをどのように添付する必要があるかわかりません。そしてどこから?誰でも私がする必要があることをステップバイステップで提供できますか?.

更新:-私はStudent.jarを解凍しようとしましたが、Student folderを取得しました。その後、ソースをStudent folderにポイントしようとしましたが、クラスを適切に表示できないため、適切にデバッグできます。上記の動作と同じです。

39
AKIWEB

通常、.jarファイルには.classファイルのみが含まれ、コンパイル元の.Javaファイルは含まれません。そのため、Eclipseは、そのクラスのソースコードを知らないと言っています。

ソースをJARに「アタッチする」とは、ソースコードの場所をEclipseに伝えることを意味します。もちろん、自分自身がわからない場合、その機能はほとんど役に立ちません。もちろん、ソースコードをグーグルで試すこともできます(または、JARファイルの入手先を確認してください)。

とは言っても、デバッグするのに必ずしもソースが必要なわけではありません。

15
meriton

Java Source Attacher を使用してください!

Eclipseがすべきことを行います-「Attach Java Source。」という右クリックコンテキストメニュー.

enter image description here

ソースが自動的にダウンロードされ、添付されます。私はそれが知らないいくつかのライブラリにヒットしただけで、それが起こるとコミュニティにURLを提供できるので、他の誰もそのライブラリに問題を抱えることはありません。

32
oikonomopo

利用可能なソースがないため、Eclipseはソースが見つかりませんでした。 jarにはコンパイルされたクラスのみがあります。

Jarからプロジェクトをインポートし、Projectを依存関係として追加する必要があります。

他のオプションは

プロパティ(プロジェクト用)-> Java Build Path-> Librariesに移動し、jarファイルを選択してソースをクリックします。ソースとJavadocを添付するオプションがあります。

14
Avinash Singh

これはEclipse-Lunaで私のために働いた:

  1. プロジェクトの下のReferenced Librariesフォルダーにある* .jarを右クリックし、[プロパティ]をクリックします。
  2. Java Source Attachmentページを使用して、ワークスペースの場所またはそのjarのソースコードの外部の場所を指定します。
3
Everlight

私はそれがかなり遅いことを知っていますが、以下の3つの方法を使用してジョブを行うことができるので、他のユーザーにとって役立つでしょう
1)1。を使用してソースコードを添付します
i.e、プロジェクトを右クリックし、プロパティ-> Javaビルドパス->ソースタブでソースを添付するか、jarファイルを削除してライブラリタブでソースを添付できます。
2。 Eclipse Source Analyzerの使用
Eclipseマーケットでは、プラグインJavaソースアナライザーをダウンロードできます。これは、オープンソースjarファイルのソースコードを添付するために使用されます。プラグインをインストールした後、オープンソースjarを右クリックし、ソースを添付するオプションを選択することで、これを実現できます。
3。 EclipseでJadclipseを使用すると、それを実行できます
最後に、このプラグインを使用してコードを逆コンパイルできます。 Eclipseマーケットプレイスからプラグインをダウンロードして、Eclipseにインストールする方法と似ています。 jadclipseビューでは、ソース形式を逆コンパイルするための.classファイルを見ることができます。ここでは、コメントと隠されたものを見ることができません。

あなたのシナリオでは、オプション1とオプション3を使用できると思います。コードをデバッグするためではなくソースコードを使用したい場合にのみ、オプション3を好みます。それ以外の場合は、ソースがすでに利用可能なので、オプション1をコーディングします。

2
ramesh027

Jarを追加した場所に戻ります。私はそのライブラリタブを信じています、私はEclipseを開いていませんが、それは正しいように聞こえます。追加したjarファイルの左側に、右向きの矢印があり、それをクリックすると3つまたは4つのオプションが展開され、そのうちの1つがライブラリのソースファイルになります。それをクリックして編集をクリックします(ダブルクリックすることもできると思います)、ハードディスク上のファイルまたはフォルダを見つけて、おそらく適用または大丈夫をクリックする必要があります最後はネイティブライブラリです。私がもうそこにいるとき、あなたが言うことができなければ、私はあまり注意を払いません。それはあなたが尋ねていたものですよね?

2
Kevin Bigler

私は同じ問題に直面し、以下の手順を使用して解決しました。 Windows-> preferences-> Editors-> File Associationsに移動します

ここで[追加]をクリックしてから.classと入力して[OK]をクリックします

もう一度[追加]をクリックし、「。classwithoughtsource」と入力して[OK]をクリックします

これで、Windows-> PreferencesのJavaセクションの下にJadClipseオプションが表示されます。

以下に示すように、jad.exeファイルのパスを指定してください。

Decompiler-C:\ Users\ahr\Documents\Eclipse-jee-galileo-SR2-win32\jad.exeのパス一時Files-C:\ Users\ahr.net.sf.jadclipseのディレクトリ

適用をクリックします

これで、適切な形式のクラスファイルを表示できるはずです。

0
Anitha HR

必要なソースクラスのパッケージをjarからコードにインポートするだけです

Jarのサブパッケージは次の場所にあります。

Eclipse-YourProject->参照ライブラリ-> yourJars->パッケージ-> Clases

いいね-このステートメントを表示するソースフォルダーのパスを指定することで、「[ソース添付ファイルにソースが含まれていません」というmysql connector jarの問題に悩まされていました

The source attachment does not contain the source for the file StatementImpl.class

次に、必要なクラスを含むmysql connector jarのパッケージをインポートします。

import com.mysql.jdbc.*;

その後、プログラムは正常に動作しています。

0
Adnan