如何在IntelliJ中更改Maven的Java版本?
我对Maven和IntelliJ IDEA都是新手 我有一个用Java8编写的Maven项目。每当我尝试构建它时(Maven项目窗口->生命周期->编译->运行Maven构建),我都会遇到一系列编译错误:如何在IntelliJ中更改Maven的Java版本?,java,maven,intellij-idea,Java,Maven,Intellij Idea,我对Maven和IntelliJ IDEA都是新手 我有一个用Java8编写的Maven项目。每当我尝试构建它时(Maven项目窗口->生命周期->编译->运行Maven构建),我都会遇到一系列编译错误: [ERROR] path/to/file.java:[26,52] lambda expressions are not supported in -source 1.5 (use -source 8 or higher to enable lambda expressions) 我应该在哪
[ERROR] path/to/file.java:[26,52] lambda expressions are not supported in -source 1.5
(use -source 8 or higher to enable lambda expressions)
我应该在哪里更改-source参数的值?我尝试在设置->编译器->Java编译器中将其作为附加参数添加,但得到了相同的结果
项目和模块的语言级别都设置为8.0
我正在使用Maven 3.2.3和IntelliJ IDEA Community Edition 13.1.2。更改源代码,如pom.xml中所示
<build>
<finalName>MQService</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
MQService
maven编译器插件
1.8
1.8
在pom.xml中更改源代码,如下所示
<build>
<finalName>MQService</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
MQService
maven编译器插件
1.8
1.8
或更简单,将此添加到pom的属性
部分:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
或更简单,将此添加到pom的属性
部分:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
摘要:
- “maven编译器插件”始终有效这是我建议您使用的
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>
</plugins>
</build>
它被再次检查这就是一个例子。大多数情况下,您不会将JDK的版本降级到1.4
当然,如果您使用属性,比如说您将POM1.8放入,然后如果您在Intellij中使用1.8JDK(语言级别默认值为1.8或语言默认值已手动更改),那么您将能够在1.8中编码,但在mvn编译时,属性将不会被看到,您将默认为Maven 1.5,编译将不会成功总结:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
- “maven编译器插件”始终有效这是我建议您使用的
要更改语言级别,请使用
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>
</plugins>
</build>
它被再次检查这就是一个例子。大多数情况下,您不会将JDK的版本降级到1.4
当然,如果您使用属性,比如说您将POM1.8放入,然后如果您在Intellij中使用1.8JDK(语言级别默认值为1.8或语言默认值已手动更改),那么您将能够在1.8中编码,但在mvn编译时,属性将不会被看到,您将默认为Maven 1.5,编译将不会成功在root(项目级)pom.xml中添加以下行使我解决了上述问题:(两个选项都对我有效)
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
备选案文1:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
备选案文2:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
在root(项目级)pom.xml中添加以下行使我解决了上述问题:(两个选项都对我有效)
备选案文1:
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
备选案文2:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
有两种方法可以做到这一点:
首先-添加属性
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
第二个-添加插件
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
maven编译器插件
3.5.1
1.8
1.8
有两种方法:
首先-添加属性
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
1.8
1.8
第二个-添加插件
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
maven编译器插件
3.5.1
1.8
1.8
我认为对这个问题的任何回答都没有解决问题-“…在IntelliJ中”
以下是步骤:-
- 转到IntelliJ(或快捷方式)中的首选项⌘ + ,)李>
- 构建、执行、部署>Maven>导入程序-选择“JDK for Importer”下拉列表,然后选择首选java版本,单击应用
- 构建、执行、部署>Maven>Runner-选择“JRE”下拉列表,然后选择首选java版本,单击应用
- 单击“确定”
我认为对这个问题的任何回答都没有解决这个问题-“…在IntelliJ中”
以下是步骤:-
- 转到IntelliJ(或快捷方式)中的首选项⌘ + ,)李>
- 构建、执行、部署>Maven>导入程序-选择“JDK for Importer”下拉列表,然后选择首选java版本,单击应用
- 构建、执行、部署>Maven>Runner-选择“JRE”下拉列表,然后选择首选java版本,单击应用
- 单击“确定”
您应该在pom.xml中添加以下代码,以强制更改语言级别
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
maven编译器插件
8.
8.
现在intelliJ2019.3 CE为您执行此操作,如果您转到导入,然后alt+enter,您将看到一个选项,上面写着“将语言级别更改为8以使用此功能”您应该在pom.xml中添加以下代码以强制更改语言级别
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
org.apache.maven.plugins
maven编译器插件
8.
8.
现在intelliJ2019.3 CE为您执行此操作,如果您转到导入,然后按住alt键并输入,您将看到一个选项,上面写着“将语言级别更改为8以使用此功能”打开ubuntu终端转到您的根目录并键入:
导出JAVA