2015-11-18 13 views
12

必要な.classファイルから参照されていますタイプorg.eclipse.jdt.annotation.NonNullは解決できません。間接的にファイルが、私は新しい演算子(例えば<code>MyType::new</code>)を持つJava 8の方法を参照のダブルコロン演算子(<code>::</code>)を使用すると、私は春のツールスイート(STS)のEclipseでこのエラーが出る

タイプorg.eclipse.jdt.annotation.NonNullを解決できません。必要な.classファイルから間接参照されています

このエラーを取り除くにはどうしたらいいですか?

答えて

6

エラーの説明は、Stephan Herrmannのコメントに記載されています。この問題をユーザーフレンドリーにするためにはEclipse issueが公開されています。

<dependency> 
    <groupId>org.eclipse.jdt</groupId> 
    <artifactId>org.eclipse.jdt.annotation</artifactId> 
    <version>2.0.0</version> 
</dependency> 
+2

右のエラーは、Eclipseプロジェクトがアノテーションベースのヌル分析を実行するように構成されているが、クラスパス上でヌルアノテーションを使用できないことを示しています。ヌルアノテーションを使用可能にする(プロジェクトで使用されている依存性メカニズムによって)回避策ではなく、実際には適切な解決策です。 Eclipseのバグは、この設定の問題を適切に報告することです(質問の解決エラーよりも優れています)。 –

+0

@StephanHerrmann、説明のためにありがとう。私は自分の答えを更新しました。 – luboskrnac

6

別のオプションは、Eclipseで、アノテーションベースのヌル分析機能を無効にすることです:

ソリューションは、以下の依存関係を含めることです。

グローバル設定またはプロジェクト設定を開き、Java > Compiler > Warningsに移動します。 Null analysisカテゴリでEnable annotation-based null analysisのチェックを外します。

作業領域を再構築する必要があり、それらのエラーは再び表示されません。

関連する問題