【问题标题】:How to change project language level for all project in Intellij如何在 Intellij 中更改所有项目的项目语言级别
【发布时间】:2015-04-28 09:17:08
【问题描述】:

我正在使用 Intellij。这很好,但是当我创建一个新项目或导入一个项目时,默认项目语言级别设置为 6(接口中的@override)。但我想将其设置为 8(Lambda、类型注释等)。我怎样才能做到这一点?我尝试更改“其他设置”->“默认项目结构”中的设置并将项目语言级别设置为 8,但没有运气。请有人帮助我。我添加了一个屏幕截图。

  • 我正在使用 Intellij 14.0.2

【问题讨论】:

    标签: intellij-idea intellij-14


    【解决方案1】:

    文件 -> 其他设置 -> 默认项目结构...

    你可以在那里改变它。

    (编辑:现在称为“新项目结构”)

    【讨论】:

    • 现在是文件 -> 新项目设置 -> 新项目结构
    【解决方案2】:

    如果是maven项目,请确保设置如下。

    例如,如果您想使用 Java 8 语言特性(-source 1.8)并且还希望编译的类与 JVM 1.8(-target 1.8)兼容,您可以添加以下两个属性,它们是插件参数的默认属性名称:

    <project>
      [...]
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
      </properties>
      [...]
    </project>
    

    更多详情请查看this

    【讨论】:

      【解决方案3】:

      我有同样的问题。更改 IntelliJ IDEA 设置文件(misc.xml、compiler.xml)没有帮助。然后我在两个地方更改了语言级别:

      1) 文件 -> 项目结构 -> 模块,“源”选项卡,语言级别 8(或更高)。

      2) 设置 -> 构建、执行、部署 -> 编译器 -> Java 编译器 -> 目标字节码版本(1.8版)

      这很好用。

      【讨论】:

      • 感谢您的回答。节省了大量时间。
      • @Andrushenko 仍然需要更改所有模块的级别。有任何全局设置吗?
      • 您必须为每个模块指定项目 sdk。文件->项目结构->模块。
      • 以下更改有效:在Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler,从Porject bytecode version 中删除了号码,然后它变成了Same as level language;相同的选项卡,将Per-module bytecode version: 部分删除&lt;my module&gt; 并再次添加,它在Target bytecode version 下显示为Same as language level;在Project Structure -> Poject,级别更改为与项目SDK版本相同;在相同的项目设置中,在选项卡Modules 中,将语言级别更改为与项目 SDK 相同。运行Invalidate Caches ... 然后它工作了。
      【解决方案4】:

      我按照上面的建议将设置更改为 Java 8...->默认项目结构

      它没有工作!

      我仍然无法在编辑器中正确编写 Lambda

      创建项目时,我选择了 Gradle 作为构建工具。 出于某种原因,我的 Java/Gradle 项目将 build.gradle 文件中的源代码兼容性设置为 1.5(可能是因为我的默认值最初设置为 1.5...我不知道,因为我懒得重现它):

      apply plugin: 'java'
      
      sourceCompatibility = 1.5
      
      repositories {
          mavenCentral()
      }
      

      sourceCompatibility 更改为 1.8 解决了这个问题,因为对 gradle 文件的更新也会触发项目构建。

      智者的话:

      Intelij 上的任何新手都应该记住,不要选择任何一个 Maven 或 Gradle 与您的 Java 项目创建一起不会设置 必需的默认包(src/main/test 和 src/main/java)结构; 对于 eclipse 用户来说,这在第一次开始时真是令人头疼 使用 Intelij。

      【讨论】:

        【解决方案5】:

        同样的问题,但解决方案略有不同。 IntelliJ (2018.1.15) 给了我将语言级别设置为 6 的选项,我接受了。这将以下内容添加到项目 .iml 文件中:

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>6</source>
                        <target>6</target>
                    </configuration>
                </plugin>
            </plugins>
        </build>
        

        然后我能够将源和目标更新为 8。

        【讨论】:

          【解决方案6】:

          我能够通过以下方式解决此问题:

          文件 -> 项目结构... 并从“项目语言级别”下的下拉列表中选择一个选项

          希望这会有所帮助!

          【讨论】:

            【解决方案7】:

            我必须编辑 .idea/misc.xml 并将 languageLevel="JDK_1_7" 更改为 languageLevel="JDK_1_8"。我一直无法通过 osx 中的 ui 更改语言级别。

            ** Intellij 15.0.4

            【讨论】:

              猜你喜欢
              • 2016-02-28
              • 2013-07-16
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2015-01-18
              • 2023-01-07
              相关资源
              最近更新 更多