Java编译器级别与已安装的Java项目方面的版本不匹配,但确实如此

时间:2015-02-13 23:56:16

标签: java eclipse maven

我正在更新古老的WebSphere 5 Web应用程序,将其移植到Tomcat中运行,用Eclipse Kepler替换IBM RAD 7.0,并使用Maven作为依赖项。

我得到了#34;分面项目问题(Java版本不匹配)"错误。特定文本是" Java编译器级别与已安装的Java项目方面的版本不匹配。"。

我已经检查了编译器版本:

  • 我右键单击该项目,然后选择“属性”。我点击" Project Facets",看看我的Java facet说1.7。
  • 我检查了#Java; Java编译器"属性页面(我喜欢"启用项目特定设置"框保持未选中状态,但它已经过检查,当我取消选中它时,Maven->刷新项目,它&#39 ;再次检查。)。编译器版本显示为灰色,但也是1.7。
  • 窗口/首选项/ Java /编译器也是1.7,"使用默认合规性设置"框已选中。
  • Windows / Preferences / Java / Installed JRE同时具有jdk1.7.0_71(已选中)和jre7。
  • pom.xml还说1.7:

        <project xmlns="http://maven.apache.org/POM/4.0.0"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
            <modelVersion>4.0.0</modelVersion>
            ...
            <build>
            <plugins>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.1</version>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                    </configuration>
                </plugin>
            </plugins>
            ...
        </build>
    
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>org.opennms.core.snmp</groupId>
                    <artifactId>org.opennms.core.snmp.joesnmp</artifactId>
                    <version>0.2.6</version>
                </dependency>
            </dependencies>
        </dependencyManagement>
    </project>
    

  • 我在哪里设置Java编译器级别&#34;与已安装的Java项目方面的版本不匹配&#34;?

    2 个答案:

    答案 0 :(得分:1)

    之前我遇到过类似的问题,我通过修改eclipse.ini文件来解决,以确保 Eclipse 将运行相应的JVM。

    这是我在javaw.exe选项之前添加到 eclipse.ini (您需要使用-vmargs的确切路径)的内容:

    -vm
    C:/Program Files/Java/jdk1.7.0_71/bin/javaw.exe 
    

    答案 1 :(得分:0)

    我有类似的情况..改变“Project Faces”没有带来任何结果。在我的情况下帮助右键单击项目 - &gt;属性 - &gt; java compplier然后取消选中“使用执行environemnt的合规性......”并选择你的java版本(在我的情况下是1.8)