2011-12-15 8 views

答えて

132

これは、存在しないインターフェースを実装しようとしているか、存在しないクラスを拡張しようとしていることを意味します。

Eclipseをリフレッシュしてみてください。

動作しない場合は、ビルドパスにないJARへの参照がある可能性があります。 プロジェクトのクラスパスを確認し、インターフェイスまたはクラスを含むjarがその中にあることを確認します。

+2

私はSpring Tool Suiteでこのエラーの原因となっていたMavenの依存関係を持っていました。解決策は問題の依存関係について 'Maven'>' Download Source'を実行することでした。 – MrLore

+0

あなたへの名誉@lagrantmere – Shinchan

+2

また、親がコンパイルされていることを確認してください。私の場合、スーパークラスが存在することが分かっていましたが、実際に正しくコンパイルされていませんでした。 –

9

エラーを確認してください(タブの「マーカー」)。私はまた、次のエラーがありました:

Archive for required library in project cannot be read...

そして、それが修正されたとき、「矛盾エラー」は消えました。

は、実際に私は、ビルド・パスにjarファイルを追加したが、何らかの理由で、彼らはエラー

Archive for required library in project cannot be read or is not a valid ZIP file

で読み取ることができませんでしたので、代わりに私は、「外部JAR」としてそれらを追加しました。それは助けられ、すべてのコンパイルの問題はもはやありませんでした!

2

クラスパスにあるライブラリファイル内のあるクラスが、別のjarファイルに存在する可能性のある存在しないクラスを参照する場合にこのエラーが表示されます。ここでは、org.springframework.beans-3.1.2.RELEASE.jarを追加せずにorg.springframework.jdbc.core.support.JdbcDaoSupportからクラスを拡張したときにこのエラーを受け取りました。これは私のクラスパスのorg.springframework.jdbc-3.1.2.RELEASE.jarにありました。

6

時には、必要なジャーを追加するときに、ITが必要とするジャーを含めないでください。私の場合、tomcat/libのすべてのjarファイルを追加すると、この問題を解決するのに役立ちました。私はweb-appに取り組んでいます。

+0

ありがとう、これは私の問題でした。私はGWTライブラリを含んでいましたが、JavaサーブレットAPI jar(この場合はJettyのservlet-api-3.1.jar)がありませんでした。 – Jamie

2

誤ったjarが含まれている可能性があります。私も同じ問題がありました。その理由は、プロジェクトのビルドパスに間違ったデフォルトJREライブラリが含まれていたためです。私は別のバージョンでJavaをインストールし、JavaのJREファイルを別のバージョンに含めていました。 (私は自分のシステムにJRE 1.6をインストールし、以前にインストールしたJavaのためにJREライブラリ1.7をビルドパスに含めました)ビルドパスに含まれているJREライブラリが正しいバージョンであるかどうかを確認できます。あなたのシステムにインストールしたJavaバージョンの

2

私はEclipse Junoでこの問題を経験しましたが、根本的な原因は、一部のSpring Jarが一時的なMaven依存関係に含まれていたものの、間違ったバージョンに含まれていたことでした。

モジュール化されたフレームワークをすべてのモジュール(または少なくとも最も重要なもの:コア、豆、コンテキスト、aop、txなど)が同じバージョンである春として使用するかどうかを確認する必要があります。

私は問題を解決するために、不適切なバージョンの一時的な依存関係を避けるために、maven依存の除外を使用しました。

3

JDKを新しいバージョンにアップグレードした後、この問題が発生しました。プロジェクトプロパティ/ Javaビルドパスでライブラリへの参照を更新する必要がありました。

3

もう1つのケースがあります。正しいプロジェクトパスを与え、eclipseにインポートします。

次に、[プロジェクト] - > [クリーニング] - > [すべてのプロジェクトをクリーンアップ]に移動します。

0

私にとっては、私にはGoogle APIの

1

で1にAndroidのAPIレベルを変更して、問題が間違っ輸入によるものでした。実際には、v7サポートライブラリを追加した後にインポートを更新する必要があります。

それは次のように実行して固定することができ、あなたのプロジェクトの各クラスの

  1. あなたの輸入を再編成
  2. 各クラスでは、import android.[*]持つすべての行を削除します。コンテキストメニューから選択ソース/整理インポートまたは(CTRL + SHIFT + O)
  3. メッセージが表示されたら、ライブラリandroid.support.[*]android.[*]ではなく)を選択します。
0

私もこの問題を持っていた...私はこの例外を投げていたクラスの階層は、日食によってすべての帰りのルートクラスにトレースすることができないことが判明...私は説明:

私の場合、私は3つのJavaプロジェクトを持っています:A、B、C ... AとBはMavenプロジェクトで、Cは通常のJava eclipseプロジェクトです...

プロジェクトAでは、 "interfaceA" ... プロジェクトBでは、私は "interfaceA"を拡張する "interfaceB"というインターフェースを持っています プロジェクトCでは、具体的なクラス "classC"があり、 "interfa ceB "

"プロジェクトC "にはビルドパスに"プロジェクトB "が含まれていましたが、"プロジェクトA "には含まれていませんでした(エラーの原因です)。 "C"のパスを構築すると、すべて正常に戻りました...

0

私のmaven pom.xmlにない依存関係がないため、間違いなくありました。

たとえば、広範なeコマースデモサイトを実装するための統合テストを作成したいと考えていました。

私は、構成ファイルとベーステストクラスを再利用するために、広葉樹取引からの統合テストを含む広葉樹瓶を含めました。そのプロジェクトには私が含まなかった他のテストの依存関係があり、 "一貫性のない階層"エラーが発生しました。

broadleaf/pom.xmlの "テストの依存関係"とbroadleaf/pom.xmlの各依存関係のバージョンを提供した関連するプロパティ変数をコピーした後、エラーはなくなりました。

性質があった。

<geb.version>0.9.3</geb.version> 
    <spock.version>0.7-groovy-2.0</spock.version> 
    <selenium.version>2.42.2</selenium.version> 
    <groovy.version>2.1.8</groovy.version> 

依存関係があった。私は、OSGiとのプロジェクトでLabelProviderを拡張するクラスを

<dependency> 
      <groupId>org.broadleafcommerce</groupId> 
      <artifactId>integration</artifactId> 
      <type>jar</type> 
      <classifier>tests</classifier> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.broadleafcommerce</groupId> 
      <artifactId>broadleaf-framework</artifactId> 
      <version>${blc.version}</version><!--$NO-MVN-MAN-VER$ --> 
      <classifier>tests</classifier> 
     </dependency> 
     <dependency> 
      <groupId>com.icegreen</groupId> 
      <artifactId>greenmail</artifactId> 
      <version>1.3</version> 
      <type>jar</type> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.11</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.easymock</groupId> 
      <artifactId>easymock</artifactId> 
      <version>2.5.1</version> 
      <type>jar</type> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.easymock</groupId> 
      <artifactId>easymockclassextension</artifactId> 
      <version>2.4</version> 
      <type>jar</type> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.testng</groupId> 
      <artifactId>testng</artifactId> 
      <version>5.9</version> 
      <type>jar</type> 
      <classifier>jdk15</classifier> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.codehaus.groovy</groupId> 
      <artifactId>groovy-all</artifactId> 
      <version>${groovy.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.gebish</groupId> 
      <artifactId>geb-core</artifactId> 
      <version>${geb.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.gebish</groupId> 
      <artifactId>geb-spock</artifactId> 
      <version>${geb.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.spockframework</groupId> 
      <artifactId>spock-core</artifactId> 
      <version>${spock.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.seleniumhq.selenium</groupId> 
      <artifactId>selenium-support</artifactId> 
      <version>${selenium.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.seleniumhq.selenium</groupId> 
      <artifactId>selenium-firefox-driver</artifactId> 
      <version>${selenium.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.seleniumhq.selenium</groupId> 
      <artifactId>selenium-chrome-driver</artifactId> 
      <version>${selenium.version}</version> 
      <scope>test</scope> 
     </dependency> 
    <!-- Logging --> 
      <dependency> 
       <groupId>log4j</groupId> 
       <artifactId>log4j</artifactId> 
       <version>1.2.12</version> 
       <type>jar</type> 
       <scope>test</scope> 
      </dependency> 
      <dependency> 
       <groupId>org.slf4j</groupId> 
       <artifactId>slf4j-log4j12</artifactId> 
       <version>1.6.1</version> 
       <type>jar</type> 
       <scope>test</scope> 
      </dependency> 
      <dependency> 
       <groupId>org.slf4j</groupId> 
       <artifactId>jcl-over-slf4j</artifactId> 
       <version>1.6.1</version> 
       <type>jar</type> 
       <scope>test</scope> 
      </dependency> 
      <dependency> 
       <groupId>org.slf4j</groupId> 
       <artifactId>slf4j-api</artifactId> 
       <version>1.6.1</version> 
       <type>jar</type> 
       <scope>test</scope> 
      </dependency> 
      <dependency> 
       <groupId>org.hsqldb</groupId> 
       <artifactId>hsqldb</artifactId> 
       <version>2.3.1</version> 
       <type>jar</type> 
       <scope>test</scope> 
      </dependency> 
0

持っていた、そこにエラーが発生しました。解決策は次のとおりです。マニフェストの必須プラグインにorg.eclipse.jfaceを追加する。org.eclipse.jface.viewersのような単一のパッケージをインポートする代わりにmfを使用します

1

拡張クラスに問題がある場合は、上記のエラーメッセージが表示されます。

class Example extends Example1 { 

} 

例は、プロジェクトをきれいに、またはEclipseを再起動する必要がありExample1

4

に問題を修正します。

0

私は同じ正確な問題マーカーを持っていて、実際には最初の実装(抽象メソッドである「スーパー」)でオーバーライドではない@Overrideアノテーションを削除することで解決しました。

1

私の場合、多くのクラスのインポート参照に余分な単語が含まれていました。私はすべてのファイルを編集して正しいインポートを持つように解決しました。私は手動で編集を始めました。しかし、私がパターンを見たとき、私はそれを日食でfind..replaceで自動化しました。これでエラーが解決されました。

0

eclipseプロジェクトをインポートする場合は、ちょうど を入力してください。1.プロジェクトプロパティのjavaビルドパス設定に移動します。 2. JREシステムライブラリにエラーサインが添付されている場合はダブルクリックしてライブラリを編集ウィンドウを開きます 3.実行環境を正しいJavaバージョンに変更するか、ラジオをチェックして他の設定を編集するボタンが割り当てられます。 4.完了をクリックします

0

エラー: "クラス名"タイプの階層に一貫性のないエラーがあります。

溶液: クラスOtherDepJar {} - >内部 "other.dep.jar" です。

クラスDepJarは延びOtherDepJar {} - >内部"dep.jar"あります。

class ProblematicClass extends DepJar {} - >は現在のプロジェクト内にあります。 dep.jarは、プロジェクトのクラスパスにありますが、プロジェクトのクラスパスにother.dep.jarていない場合は、Eclipseが表示されます

0

「タイプの階層を...は、一貫性のないエラーです」 「Google Plugin for Eclipse」をインストールせずにEclipseでGWTプロジェクトをインポートすると、これが発生します。 「Google Plugin for Eclipse」をインストールすると、このエラーは表示されなくなります。

関連する問題