Answers:
这意味着您正在尝试实现一个不存在的接口,或者您正在扩展一个不存在的类。
尝试刷新您的Eclipse。
如果它不起作用,则可能意味着您引用了不在构建路径中的JAR。检查项目的类路径,并验证其中是否包含接口或类的jar。
我有另一种情况。提供正确的项目路径,并将其导入到Eclipse中。
然后转到Project-> Clean-> Clean all projects。
我在Eclipse Juno上遇到了这个问题,其根本原因是,尽管临时Maven依赖项包含了一些spring jar,但它们包含在错误的版本中。
因此,您应该检查一下是否使用模块化框架作为弹簧,每个模块(或至少最重要的模块:内核,Bean,上下文,aop,tx等)都处于同一版本中。
为了解决该问题,我使用了Maven依赖排除来避免错误版本的临时依赖。
对我来说,问题是由于进口错误。实际上,添加v7支持库后,需要更新导入。
对于项目的每个类,可以通过以下步骤进行修复:
import android.[*]
每个类中带有的所有行android.support.[*]
(而不是android.[*]
)。肯定是因为缺少了我的maven pom.xml中没有的依赖项。
例如,我想为我的阔叶电子商务演示站点的实现创建集成测试。
我包括一个带有阔叶商务集成测试的阔叶jar,以便重用其配置文件和基础测试类。该项目具有我未包括的其他测试依赖项,并且收到“层次结构不一致”错误。
从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>
依赖项是:
<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>
我有完全相同的问题标记,并通过从实际上是第一个实现(“超级”是抽象方法)而不是替代的方法中删除@Override注释来解决该问题。
我也有这个问题...我发现抛出此异常的类的层次结构无法通过eclipse一直追溯到其根类...我解释:
就我而言,我有3个Java项目:A,B和C ...,其中A和B是Maven项目,C是常规的Java Eclipse项目...
在项目A中,我具有接口“ interfaceA” ...在项目B中,我具有扩展“ interfaceA”的接口“ interfaceB”在项目C中,我具有实现“ interfaceB”的具体类“ classC”
“项目C”在其构建路径中包含“项目B”,但未在“项目A”中包含(因此是导致错误的原因)....在“ C”的构建路径中包含“项目A”之后,一切恢复正常...
Maven
>Download Source
。