我遇到以下错误或$ mvn编译:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project Sym360: Compilation failure: Compilation failure:
[ERROR] Source option 5 is no longer supported. Use 6 or later.
[ERROR] Target option 1.5 is no longer supported. Use 1.6 or later.
[ERROR] -> [Help 1]
这是我的pom.xml的代码:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test.app</groupId>
<artifactId>Tset</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>Test</name>
<url>http://maven.apache.org</url>
<properties>
<maven.compiler.source>6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<!-https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-
java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.14.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
<scope>test</scope>
</dependency>
我试图在pom.xml代码中添加属性,但是仍然遇到相同的错误。有人可以帮我解决这个问题吗?预先感谢
答案 0 :(得分:28)
帮助我的是pom.xml文件中的这些行
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
答案 1 :(得分:25)
我有同样的问题,问题出在属性上。检查项目中的JavaSE版本,它将显示在项目中的JRE System Library文件夹旁边。如果为1.5,则将引发错误。您很可能将拥有更新的版本,因此请检查该版本并进行更新。我已经根据您的代码在下面对其进行了更新。
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
答案 2 :(得分:3)
我遇到了同样的问题,我在pom.xml中添加了以下配置,并且可以正常工作。
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
答案 3 :(得分:2)
对于新的Apache net Bean,它与SUPARNA SOMAN的建议有些不同
set configuration
”上,然后点击customize configuration
-。一个新的对话框打开。...Source
” 答案 4 :(得分:2)
在pom中添加以下代码将解决问题
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<profiles>
答案 5 :(得分:2)
我也遇到了同样的问题,并使用以下代码行解决了该问题:
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
答案 6 :(得分:1)
我认为您错了pom.xml:
<properties>
<maven.compiler.source>6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
更改为:
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
现在取决于您是否使用命令行来使用:
mvn clean编译
或任何一种方式(日食ide)
右键单击运行项目maven> build>目标(编译)
答案 7 :(得分:1)
这对我有帮助:
然后您会收到Build Success消息,并且您的maven项目已成功创建。
答案 8 :(得分:1)
以上解决方案都不适合我。
由于某些原因,我的 project.iml 文件名已更改。发现之前subversion仓库提交的不同...
在 projectname.iml 中我发现了这一行:
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_5">
我所要做的就是将其更改为 11
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_11">
答案 9 :(得分:0)
答案 10 :(得分:0)
这是来自较新的 javac
的消息,例如:
$ java -version
openjdk version "11" 2018-09-25
$ javac -source 1.5 -target 1.5 Test.java
error: Source option 5 is no longer supported. Use 6 or later.
error: Target option 1.5 is no longer supported. Use 1.6 or later.
因此,显然您使用的是更新的 JDK 版本和 3.8.0 之前的 Maven 版本(“<source>
/<target>
... 注意:从 3.8.0 开始,默认值具有从 1.5 更改为 1.6")。您使用的 maven-compiler-plugin:3.1
是 from April 2013。
有两种可能:
将您的 Maven 版本更新到最新版本(我建议这样做)
2.2. Java 9 及更高版本
...
<properties>
<maven.compiler.release>...</maven.compiler.release>
</properties>
答案 11 :(得分:0)
这两个选项都对我有用,以解决不再支持源选项 5。使用 6 或更高版本”在 Maven 编译中
打开 pom.xml 文件
选项 1:添加构建标记
选项 2:添加属性标签
<project>
<groupId>com.pluralsight</groupId>
<artifactId>HelloWorld</artifactId>
<version>1.0-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>12</release>
</configuration>
</plugin>
</plugins>
</build>
</project>
OR
<project>
<groupId>com.pluralsight</groupId>
<artifactId>HelloWorld</artifactId>
<version>1.0-SNAPSHOT</version>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
</project>
答案 12 :(得分:0)
就我而言,运行 MacOS Big Sur 和 JDK 版本 15,我将以下代码添加到如下所示的 pom.xml
文件中。我为我的 JDK 版本添加了 15
。
<properties>
<maven.compiler.source>15</maven.compiler.source>
<maven.compiler.target>15</maven.compiler.target>
</properties>
然后我重新运行 $ mvn clean wildfly:deploy
并且成功了。
答案 13 :(得分:0)
如果在 Eclipse 中,写入单击项目并转到属性。搜索 maven 并在那里配置一个 jdk 更高版本(1.7 及更高版本)并应用。现在尝试 maven 安装。
答案 14 :(得分:0)
以下是对我有帮助的解决方案:
我在错误源选项5上遇到了同样的问题,不再支持,请使用6或更高版本
所以我遵循了这些说明和问题已解决
清理并生成,然后运行项目
答案 15 :(得分:0)
在我的一个项目中,除了以上所有答案外,另一种尝试也可行: 只需在项目结构的“模块”部分中更改语言级别 [下图] [] 1
答案 16 :(得分:0)
在MacOS上,我有多个版本
user> ls /Library/Java/JavaVirtualMachines/
jdk-11.0.4.jdk jdk-12.0.2.jdk jdk1.8.0_221.jdk
并且未正确定义JAVA_HOME,因此Maven使用了jdk-12。我有jdk-11,jdk-8和jdk-12。
user> mvn -version
Apache Maven 3.6.1
Maven home: /usr/local/Cellar/maven/3.6.1/libexec
Java version: 12.0.2, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home
Default locale: XXX, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.6", arch: "x86_64", family: "mac"
所以:
定义JAVA_HOME
以使用jdk-8。
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
再试一次,现在行家是:
user> mvn -version
Maven home: /usr/local/Cellar/maven/3.6.1/libexec
Java version: 1.8.0_221, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/jre
构建是:
[INFO] BUILD SUCCESS