我正在使用maven项目进行自动化,当我从eclipse执行脚本时,当我尝试从Jenkins运行脚本时它工作正常,然后系统显示错误
[错误]不再支持源选项6。使用7或更高版本。 [错误]不再支持目标选项6。使用7或更高版本。
JKD:12, 窗户:10, 詹金斯: 专家:
我正在使用以下Maven插件
[![<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>EventBuizz</groupId>
<artifactId>EventBuizz</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-dependency-tree</artifactId>
<version>3.0.1</version>
</dependency>
<!-- Selenium -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<!-- TestNG -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
<scope>test</scope>
</dependency>
<!--JUnit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<!--Maven Plugin -->
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<type>maven-plugin</type>
</dependency>
</dependencies>
<build>
<plugins>
<!--Maven Plugin -->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
</configuration>
</plugin>
<!--Maven surfire plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.8</version>
<configuration>
<printSummary>true</printSummary>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
</project>][1]][1]
答案 0 :(得分:1)
包含以下几行:
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
无论使用什么版本的JDK,您都必须将项目编译为Java 6。
Jenkins告诉您它不再支持Java 6。只需将该版本更新为更高版本即可。
答案 1 :(得分:1)
构建服务器中的Maven版本不支持Java 6,并且您正在通过pom.xml强制将其编译为Java 6。根据需要,您有两种选择,要么将pom.xml纠正为更高的Java版本,要么将jinkens指向一个较早的maven版本。
答案 2 :(得分:0)
似乎您是带Java12的SOL。
根据Oracle Java文档, https://docs.oracle.com/en/java/javase/12/tools/javac.html
源代码发布 指定接受的源代码版本。允许以下释放值:
注意: 从JDK 9开始,javac不再支持小于或等于5的-source版本设置。如果使用小于或等于5的设置,则javac命令的行为就像指定了-source 6
解决方案: 您可以使用Java 8一直回到Java 1.2: https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html
使用Maven工具链/配置文件可以动态选择要使用的工具: https://maven.apache.org/guides/mini/guide-using-toolchains.html
https://maven.apache.org/plugins/maven-compiler-plugin/examples/compile-using-different-jdk.html