【发布时间】:2021-03-07 12:35:58
【问题描述】:
在 Eclipse 中创建我的 Maven 安装时,我遇到了 -source 1.5 中不支持的各种 java 错误。我的代码没有问题。
错误如下:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1
[23,62] multi-catch statement is not supported in -source 1.5
[241,29] try-with-resources is not supported in -source 1.5
[156,64] diamond operator is not supported in -source 1.5
我的 pom 配置如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
【问题讨论】:
-
请升级您的 maven-compiler-plugin 版本....该配置是针对不处理此类配置的 maven-war-plugin 给出的。该插件是 maven-compile-plugin 而不是...为什么要配置单独的 maven-war-pugin?此外,如果您想设置编码,请设置属性:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>,这将使您的配置中的<encoding>..</encoding>变得多余。 -
我对用“maven-compile-plugin”替换“maven-war-plugin”不感兴趣。原因是当我升级到 jdk 1.9+ 时,它会给我一个警告“发生了非法反射访问操作”。感谢 K 关于 sourceEncoding 的建议。我会试试的:)
-
请听从 khmarbaise 的建议。您错误地使用了 Maven 战争插件。配置需要在maven编译插件中。
-
错误信息告诉你maven-compiler-plugin有问题。那是您需要修复的配置,而不是 maven-war-plugin。
-
考虑使用更好的 IDE,它可以帮助您解决此类问题。
标签: java maven configuration version maven-compiler-plugin