web-dev-qa-db-ja.com

Eclipseエラー:「インポートXXXを解決できません」

EclipseでHibernateを使用しようとしています。私は新しい単純なプロジェクトを作成しています。CVSを介して同僚のプロジェクトもダウンロードしました。両方とも機能しませんが、私の同僚のEclipseでは機能します。問題は、Hibernateクラスのインポートごとに、Eclipseが言うことです:

The import org.hibernate cannot be resolved

ただし、すべてのHibernate jarはビルドパスにあります。

antlr-2.7.6.jar
cglib-2.2.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
javassist-3.12.0.GA.jar
jta-1.1.jar
slf4j-api-1.6.1.jar
115
bluish

問題が見つかりました。それはhibernate3.jarでした。 .Zipからうまく抽出されなかった理由がわかりません。多分破損です。 jarが破損しているかどうかを確認する良い方法は、Eclipseの「プロジェクトエクスプローラー」でツリー構造をナビゲートすることです。jarノードを展開できない場合、おそらく破損しています。 ドラッグアンドドロップを「プロジェクトエクスプローラー」に移動すると、破損したパッケージが頻繁に発生することがわかりました。 OS環境でそれらを移動してコピーする方が良いかもしれません!皆さん、ありがとうございました。

17
bluish

次のメニュー項目に移動して、プロジェクトのクリーニングを試してください。

Project > Clean...

それでもうまくいかない場合は、ビルドパスからjarを削除して、再度追加してみてください。

259
dogbane

プロジェクトをきれいにします。そして、ビルドパス上に実際にあるjarファイルを(エラーなしで)再確認します。また、「問題」ビューに何もないことを確認します。

20
Bozho

明らかに有効な問題がある場合もありますが、Eclipseは正当な理由でこのエラーをスローすることがあります。

これはまだ(2019-03)古い(2010)Eclipseバグであり、プロジェクト設定にごくわずかな変更を加えることで解決できます。

変更することを選択した設定は、[プロジェクト]> [プロパティ]> [Javaビルドパス]> [順序とエクスポート]> [意味のない順序の変更]> [適用]です。

順序を元に戻しても、問題に回帰することはありません。単純に touch ファイルを変更することでも問題が解決する場合があります(次回タッチをテストします)。

18
user1133275

Mavenプロジェクトの場合、Maven>>Update project ...(F5)

Update Maven project

15
albertoiNET

クラスパスが何らかの形で壊れているという問題がありました。

だから、パッケージエクスプローラーでプロジェクトを右クリック>プラグインツール>クラスパスを更新...

5
wuppi

プロジェクトを削除し(ディスク上で削除しないで)、再度インポートすることで解決しました。

5
SoldierShen
  1. プロジェクトを右クリック->ビルドパス->ビルドパスの構成->ライブラリタブ->.
  2. JRE SYSTEM LIBRARYをダブルクリックします->次に、代替JREを選択します

4

プロジェクトのビルドパスにJREシステムライブラリを追加してみてください。

4
Gaurav Pant

プロジェクトを更新してこの問題を解決しました。Mavenプロジェクトを右クリックし、Maven->プロジェクトの更新->スナップショット/リリースの強制更新チェックボックスを選択します。

私と一緒にコンパイラー準拠レベルの変更を助けました。理由は不明ですが、1.6に設定されていたため、1.8に変更しました。

プロジェクトレベルでプロジェクト>プロパティ> Javaコンパイラを右クリックし、Eclipseでメニューウィンドウ>設定> Java>コンパイラをクリックします。

1
Alex P.

上記のすべての答えを試しましたが、運はありませんでした。私の場合、追加の「.class」ファイルを含む生成されたbuild/classesフォルダーがあります。最終的にパッケージエクスプローラーに行き、プロジェクトを右クリックして「更新」オプションを選択すると、ビルド/クラスフォルダーが再び利用可能になり、問題が解決しました。

1
egallardo

これで問題が解決しました。

1)プロジェクトのクリーンプロジェクト->クリーン...

2)プロジェクトを右クリック-> BuildPath-> BuildPathの構成->ライブラリタブ-> JRE SYSTEM LIBRARYをダブルクリック->代替JREを選択

3)[保存]をクリックします

4)再びプロジェクトエクスプローラーでプロジェクトに移動し、プロジェクトを右クリック-> BuildPath-> Configure BuildPath-> Librariesタブ-> JRE SYSTEM LIBRARYをダブルクリック->今回は「Execution Environment」を選択

5)適用

1
Atul Waghmare

私の場合、Mavenリポジトリー内の壊れたjarでした。リポジトリ内のjarファイルを削除し、Mavenに再度ダウンロードさせます。

コマンドラインからmvn clean installを実行したところ、問題なく実行されましたが、Eclipseはまだコードをコンパイルできませんでした。 Eclipseでmaven installを実行すると、Mavenが不正なjarファイルについて不平を言っていることがわかりました。それで私はそれを削除し、再びmaven installを実行しました。問題はなくなりました。

1
Evgeny Shmulev

作成したjarを追加し、クラスのベースディレクトリ以外のパッケージベースディレクトリを設定したため、同じ問題が発生しました。結果として、クラスJava.util.Listutil.Listとしてインポートする必要がありましたが、推奨されるインポートは最初のものでした。

参照されたライブラリの下のインポートされたjarをチェックして、正しくインポートされていることを確認します

1
kon psych

私はこの背後にある理由を理解していませんでしたが、これは私が直面していた同じ問題を解決しました。上記のソリューションで説明されている手順を実行する前に、これらの手順が必要になる場合があります(すべてのプロジェクトをクリーンアップし、自動的にビルドします)。

プロジェクトを右クリック->プロパティ->プロジェクトファセット-> Javaを選択->適用

1
avp

この問題が発生した場合は、[プロジェクト]> [クリーン]に移動し、[すべてのプロジェクトをクリーン]を選択します。解決されるはずです。そうでない場合は、それらのjarを削除してから再度追加してください。最後にEclipseを再起動してみてください。

.m2ディレクトリに存在しないjarファイルをダウンロードするには、プロジェクトpom.xmlに対してmvn clean installコマンドを実行する必要があります。次に、Alt+F5をクリックしてプロジェクトの依存関係を更新する必要があります。これは私のために働く!

0
ÖMER TAŞCI

pom.xml

Mavenプロジェクトの場合は、pom.xmlに移動して、すべての依存関係jarを削除します。それを保存。プロジェクトは自動的にビルドされます。

次に、依存関係jarを再度追加します(できます Ctrl+Z)。それを保存。プロジェクトは自動的にビルドされ、そのエラーは表示されません。

0
sravan

ソースをリンクすることで解決しました。エクスプローラからプロジェクトを右クリックし、プロパティを選択し、Javaビルドパスを選択し、タブからソースを選択して、ボタン「LinkSource」を押します。そして、プロジェクトに追加するフォルダーを指定します。

0
livelovelaugh

「module-info.Java」を削除すると、問題が解決しました!

このファイルは自動的に生成され、私の階層に表示されました...

0
val_t

私もインポートできませんでした。 1.8にコンパイルしようとしている間に、1.6バウンドライブラリ/ jarを使用しようとしたことを理解するのに数時間かかりました。 1.6を使用するようにプロジェクトを切り替えたときに、インポートの問題はなくなりました。すべてのエラーメッセージが間違った方向に導かれていました。ソースだけで、バージョン1.6を対象とするいくつかの制限を見つけました。そして:例えば、.settingsと.classpath(File-Search)-> org.Eclipse.jdt.core.compiler.codegen.targetPlatform = 1.6は、そのような問題についてのヒントを与えることができます。

0
sqller

MavenリポジトリのJPA JAR を使用してこの問題を解決し、プロジェクトのビルドパスに追加しました。

0
Leandro Bonini

同じ問題に直面し、pom.xmlの2つの異なる依存関係で2回追加されたjarを削除することで解決しました。依存関係の1つを削除すると、問題は解決しました。

0
Reema

Mavenで作業していてこの問題がある場合は、アーティファクトが存在する場合、リポジトリサーバー(たとえば、nexusサーバー)を確認してください。時々、彼らはアーティファクトの名前を変更することができ、古い名前のアーティファクトを取得しようとします。

0
drJava

同じ問題が発生しました。 jarをダウンロードしてビルドパスに追加しましたが、拡張子が.jar.Zipであることに気付きませんでした。再び.jarに変換し、ビルドパスに追加しました。

それは私の問題を解決しました。それは非常にばかげた間違いですが、誰かを助けることができるようにここに書きました。

0
Ali786

すべてのライブラリが適切に配置されているかどうかを確認してください。同じ問題がありました。しかし、libフォルダーを移動し、ビルドパスにすべてのjarを再度追加することで解決しました。

0
Ravikumar