java无效的源发行版9 intellij idea-错误:java:无效的源版本1.9




java无效的源发行版11 (6)

我正在尝试运行我的JSQL解析器类,但我得到 Error: java: invalid source release 1.9

我试着按照 这个答案 。 我更改了文件>构建,执行,部署> Java编译器>项目字节码版本:1.8。 但是,我无法将模块语言级别和项目语言级别更改为1.8,因为没有选项。 我仍然在下面得到同样的错误。

错误

package cs4321.project2;

import java.io.FileReader;
import net.sf.jsqlparser.parser.CCJSqlParser;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.select.Select;

public class Parser {
    private static final String queriesFile = "resources/input/queries.sql";

    public static void main(String[] args) {
        try {
            CCJSqlParser parser = new CCJSqlParser(new FileReader(queriesFile));
            Statement statement;
            while ((statement = parser.Statement()) != null) {
                System.out.println("Read statement: " + statement);
                Select select = (Select) statement;
                System.out.println("Select body is " + select.getSelectBody());
            }
        } catch (Exception e) {
            System.err.println("Exception occurred during parsing");
            e.printStackTrace();
        }
    }
}

Answer #1

对于那些在尝试使用DeanM的解决方案时遇到此问题的人而言无济于事,还有其他值得检查的东西,这是您为项目配置的JDK版本。 我想说的是,如果您为项目配置了JDK 8u191(例如),但语言级别设置为高于8的任何值,那么您将收到此错误。

在这种情况下,最好问一下谁负责项目,哪个版本的JDK更适合编译源代码。


Answer #2

在IntellijIdea中我也遇到了同样的问题,选择项目后,然后选择File> ProjectStructure> ProjectSettings> Modules - >选项显示的源 - 语言级别设置为9:

所以,我只是将它改为8.我的问题仍未得到解决。

主要问题是pom.xml。 我重新导入了pom.xml文件,我的问题得到了解决。

因此,每当您更改pom.xml文件时,IDEA都需要更新项目结构。 例如,如果您添加了更多依赖项,IDEA需要将它们添加为项目库。

在“设置>构建,执行,部署>构建工具> Maven>导入”中,您可以选择“自动导入Maven项目”。 当pom.xml发生更改时,这将自动调用“Reimport”操作。

在此输入图像描述


Answer #3

选择项目,然后选择File> ProjectStructure> ProjectSettings> Modules - > sources您可能将语言级别设置为9:

只需将其更改为8(或任何您需要的),您就可以了。

另外,在项目设置>项目下检查上面提到的相同语言级别设置


Answer #4

使用maven项目时。

检查pom.xml文件

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>9</java.version>
</properties>

如果您的计算机中安装了jdk 8,请将 java.version 属性从 9 更改为 8


Answer #5

我曾经也有过一样的问题。 有一个答案:

  • 1. CTRL + ALT + SHIFT + S ;
    1. 然后转到“ 模块” ;
    2. 依赖性 ;
    3. 更改“ 模块SDK ”。

得到它了! 现在你有了Java 9!


Answer #6

我刚才有类似的问题。 该项目已经使用Java 9打开,但即使在所有模块和项目都设置回1.8之后,我仍然遇到错误。

我需要强制Gradle刷新项目,然后一切都按预期运行。





compiler-errors