0

当我尝试使用 maven 运行 testng 项目时,出现了这个错误。我所做的只是在我的 pom 文件中添加范围报告依赖项。它在我有 JAVA 版本 1.8 的本地工作得很好。

那么,范围报告是否依赖于 JAVA 1.8?它不适用于 JAVA 1.8 版

无法在项目上执行目标 org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default) :目标 org.apache.maven.plugins:maven-surefire-plugin:2.18.1 的执行默认值:测试失败:在分叉进程 java.lang.UnsupportedClassVersionError: com/relevantcodes/extentreports/ExtentReports 中出现错误:在 java.lang.ClassLoader.defineClass1(Native Method) 在 java.lang.ClassLoader 不支持 major.minor 版本 52.0 .defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader .java:71) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:361) 在 java.net.URLClassLoader$1.run(URLClassLoader.java:355) 在 java.security。AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher. java:308) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:356) 在 commbank.ui.automation.common.ExtentReporterNGListener.generateReport(ExtentReporterNGListener.java:28) 在 org.testng.TestNG.generateReports(TestNG.java :1106) 在 org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:295) 在 org.apache.maven.surefire.testng 的 org.testng.TestNG.run(TestNG.java:1065)。 TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:84) 在 org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:90) 在 org.apache.maven.surefire.booter.ForkedBooter。invokeProviderInSameClassLoader(ForkedBooter.java:203) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) [09:28:07][步骤 1/1] 步骤 Maven 失败

4

1 回答 1

1

根据项目的自述文件

当前版本:3.0.1

仅限 Java8。Java7及更低版本,使用Extent v2。

因此,如果您的目标平台是 Java8,请使用:

<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>3.0.1</version>
</dependency>

相反,使用:

<dependency>
    <groupId>com.relevantcodes</groupId>
    <artifactId>extentreports</artifactId>
    <version>{latest 2.x version}</version>
</dependency>

但是 2.41.2(当前最新版本)有一个构建问题:https ://github.com/anshooarora/extentreports-java/issues/678然后使用以前的版本。

于 2016-11-23T21:15:21.487 回答