如何更改IntelliJ中所有模块的语言级别

时间:2014-03-19 11:17:48

标签: intellij-idea

我有一个包含MANY模块的项目。我们正在升级到Java7,我希望我的编辑能够反映这一点。现在我的所有模块都专门将语言级别设置为Java6,并且我有太多模块可以为每个模块更改此设置。如何将所有模块设置为Java7?更好的是,如何设置所有模块以使用项目的语言级别?

3 个答案:

答案 0 :(得分:17)

正如Lambart对另一个答案的评论所指出的,该解决方案并不适用于完全更改所有模块的目标版本。

另外,请注意,为项目设置目标级别很好,但是此目标版本会被模块中指定的版本覆盖。

如果你像我一样不幸并且需要​​处理100多个模块的Java单块,那么逐个更换模块将是一件痛苦的事。

我的解决方案“烦人”,但在LINUX下工作。我假设您在示例中要将表单 1.5 更新为 1.8

步骤1)您必须进入.idea文件夹并查找文件compiler.xml

替换标记target中的所有<module>值,例如

target="1.5" 

target="1.8"

步骤2)进入项目文件夹并运行以下脚本

find . -type f -name "*.iml" -print0 | xargs -0 sed -i "s/JDK_1_5/JDK_1_8/g"

将模块中的所有语言级别替换为符合JDK8。

答案 1 :(得分:14)

在IntelliJ IDEA 14.0中,转到文件|项目结构|模块(Ctrl + Shift + Alt + S)。

模块列表支持多种选择,所以

  • Ctrl单击各个模块
  • 转换单击模块范围
  • Ctrl-A所有模块

在下拉菜单中选择语言级别,然后手动选择级别或“使用项目语言级别”。

与更改项目的语言级别类似,在“项目设置”下左侧的功能区中选择项目。下拉菜单可用于项目语言级别。选择所需的级别。这将为所有项目模块设置默认值

来源

答案 2 :(得分:2)

其他解决方案对我来说并不起作用,即使手动修改compiler.xml以及.iml仍设置为LANGUAGE_LEVEL的所有"JDK_1_5"文件}。这是由maven-compiler-plugin插件引起的。

将其更改为以下修正:

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

希望这也能为其他人解决。