Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误:Java:无效的目标版本:11-IntelliJ IDEA_Java_Intellij Idea_Java 11 - Fatal编程技术网

错误:Java:无效的目标版本:11-IntelliJ IDEA

错误:Java:无效的目标版本:11-IntelliJ IDEA,java,intellij-idea,java-11,Java,Intellij Idea,Java 11,我正在尝试构建一个使用Java8构建的应用程序,现在它升级到Java11。我在我的windows机器中安装了并使用IntelliJ IDEA 2017作为我的IDE 我更改了系统环境变量并设置了 JAVA_HOME to C:\Program Files\Java\jdk-11.0.1 并将其添加到Path变量中 C:\>java -version java version "11.0.1" 2018-10-16 LTS Java(TM) SE Runtime Environment 1

我正在尝试构建一个使用Java8构建的应用程序,现在它升级到Java11。我在我的windows机器中安装了并使用IntelliJ IDEA 2017作为我的IDE

我更改了系统环境变量并设置了

JAVA_HOME to C:\Program Files\Java\jdk-11.0.1
并将其添加到
Path
变量中

C:\>java -version
java version "11.0.1" 2018-10-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode) 
当我在IntelliJ中构建应用程序时,我得到的是:

Information:java: Errors occurred while compiling module 'test-domain_main'
Information: javac 1.8.0_171 was used to compile java sources
Information:1/10/2019 4:21 PM - Compilation completed with 1 error and 0 warnings in 1s 199ms
Error:java: invalid target release: 11
这就是我迄今为止所尝试的:

  • 我将
    .idea/compiler.xml
    目标值从8更改为11,但这没有帮助。另外,在
    settings>Build,Execution,Deployment>Compiler>Java编译器中验证
    Target字节码版本
    ,并且我的所有模块都设置为11

  • 转到
    文件>项目结构>SDK*(目前我列出了1.7和1.7)*>添加新SDK>JDK>
    在那之后,我选择了
    C:\ProgramFiles\Java\jdk-11.0.1
    ,但错误为“所选目录不是jdk的有效主目录”

  • 我不确定是否安装了错误的JDK 11,因为在我的
    C:\Program Files\Java\
    中,我看到
    1.7
    1.8
    有单独的JDK和JRE文件夹,而
    11.0.1

    还是我还需要改变什么

    请访问IntelliJ IDEA 2018.x以获得Java 11支持。您的IntelliJ IDEA版本在Java 11之前发布,不支持此Java版本。

    • 我今天收到了相同的信息和错误信息,但我收到了 最近更新的Idea->2018.3.3,于2019年1月9日建成
    • 为了解决这个问题,我更改了文件->项目结构->模块 语言水平达到10级

    • 并检查文件->设置->构建、执行、, 部署->编译器->Java编译器->项目字节码每个模块字节码版本。我有11个在那里

    • 现在我没有收到这些通知和错误

      对于像我这样的人来说,这可能是有用的,因为他们有着最新的想法,却得到了同样的错误


    我的问题与Gryu所说的相同。 同样的Intellij 2018 3.3

    我可以通过设置开始我的项目(如Grigoriy所述)


    我希望它会有用

    在更新我的想法后,我遇到了同样的错误,我解决了它,如下所示:

    文件>>项目结构…>>计划

    “项目语言级别:”设置为“11-lambda参数的局部变量语法” 因此,我将其更改为“SDK默认值(8-Lambdas、类型注释等)”,然后应用更改
    错误被解决。

    也有同样的错误。问题是我有一个空的
    package-info.java文件
    。一旦我在里面添加了包名,它就工作了…

    我可以说我有类似的问题。我的案例:我在工作区中从项目的新版本切换到旧版本,尝试运行需要重新编译的单个junit,重新编译错误被抛出,目标无效

    从IntelliJ中的项目设置(F4)来看,一切都很好,java设置为1.7。但当我尝试从IDE重新编译时,由于目标级别错误而引发了错误。检查后,我发现在一个iml文件中,语言被设置为JDK_11。手动更改为JDK_1_7后,一切恢复正常


    还值得手动检查IDE创建的*iml文件中的lang级别。

    如果通过构建系统(Maven、Gradle等)构建项目可行,但IntelliJ show
    目标版本无效
    错误,则执行以下操作

  • 近距离智能

  • 转到项目的目录

  • 删除.idea/目录

  • 使用项目目录启动IntelliJ

  • 这将重新创建.idea/目录,并且不再显示错误


    注意:删除.idea/目录时,您添加的任何特定于存储库的IntelliJ设置都将被删除,并将使用默认值重新创建这些设置。

    对于我来说,我也遇到了同样的问题,但java v8
    中存在同样的问题,我在我的机器上为我的不同项目使用了不同版本的java。在导入我的一个项目时,我遇到了同样的问题。为了检查配置,我检查了所有与SDK相关的设置,无论是在
    文件->项目->项目结构/模块中,还是在运行/调试配置设置中。我将一切设置为
    java-8
    ,但仍然遇到同样的问题。在检查所有配置文件时,我发现.idea中的compiler.xml有一个字节码TargetLevel的条目,该条目设置为11。这里,如果我将其更改为8,即使它显示相同的编译器输出,并从
    compiler.xml
    中删除
    ,也可以解决此问题

    Maven也有可能使用不同版本的JDK,在这种情况下,您可以将Maven设置为使用项目默认的JDK版本


    我的项目模块设置为8,但pom.xml设置为11。当我在模块中从8改为11时,它起了作用。

    我遇到了这个问题,因为我目前正在将代码库升级到JDK 11,并在分支中在8和11之间切换。看来IntelliJ不喜欢这样

    解决方案:

    如果您在项目结构中选择了当前JDK(
    Ctrl+Shift+Alt+S
    ),但仍然收到错误,请使缓存无效
    文件>使缓存无效/重新启动…


    重新启动IDE后,我的错误消失了。

    我也遇到了同样的错误,我只是将pom.xml中的java版本从11更改为1.8,工作正常。

    我也遇到了类似的错误,但在我的例子中是错误:java:invalid source release:11。。。因此,我只是将Java11的所有注释都更改为Java8,即使注释是Java8,我也只是这样离开它。我希望它能帮助你解决这个问题。

    如果你
    File->Project Structure->Modules ->> Language level to 8 ( my maven project was set to 1.8 java)
    
    File -> Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> 8 also there
    
    compileJava.options.fork = true
                                                  
    compileJava.options.forkOptions.executable = 'C:\\Program Files\\Java\\jdk-11.0.8'
    
    1. pom.xml (start with this important)
        - <java.version>1.8</java.version>
        * Enable auto import on pop up
        * Wait until it loads
    
    2. Project Structure
        - Project
            - Project SDK - 1.8 
            - Project language Level - 8
        - Modules
            - Sources
                - Language level - 8
                - Dependencies - Project SDK 1.8
    
    3. Delete idea folder
    4. Close window
    5. Reopen window (make sure it loads at bottom)
    
    <properties>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.source>1.8</maven.compiler.source>
    </properties>