![](/img/trans.png)
[英]stop IntelliJ IDEA to switch java language level every time the pom is reloaded (or change the default project language level)
[英]How to change project language level for all project in Intellij
我正在使用Intellij。 这很好,但是当我创建一个新项目或导入项目时,默认项目语言级别设置为6(接口中的@override)。 但是我想把它设置为8(Lambdas,类型注释等)。 我怎样才能做到这一点? 我尝试更改“其他设置” - >“默认项目结构”中的设置,并将项目语言级别设置为8,但没有运气。 请有人帮助我。 我添加了一个屏幕截图。
文件 - >其他设置 - >默认项目结构...
你可以在那里改变它。
(编辑:现在称为“新项目的结构”)
如果是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>
有关详细信息,请检查此
我有同样的问题。 更改IntelliJ IDEA设置文件(misc.xml,compiler.xml)没有帮助。 然后我改变了两个地方的语言水平:
1)文件 - >项目结构 - >模块,“源”选项卡,语言级别8(或更高)。
2)设置 - >构建,执行,部署 - >编译器 - > Java编译器 - >目标字节码版本(版本1.8)
这很好。
我按照上面的建议将设置更改为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时的头脑。
同样的问题但解决方案略有不同 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。
我必须编辑.idea/misc.xml
并将languageLevel="JDK_1_7"
更改为languageLevel="JDK_1_8"
。 我无法通过osx中的ui更改语言级别。
** Intellij 15.0.4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.