![](/img/trans.png)
[英]UnsupportedClassVersionError: has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version (..)up to 52.0
[英]org/testng/ITestListener has been compiled by a more recent version of the Java Runtime (class file version 55.0), only recognizes version up to 52
当我使用 testng.xml 执行我的测试时,它运行正常,但是当我使用 pom.xml 执行时,出现错误:
[ERROR] java.lang.UnsupportedClassVersionError: org/testng/ITestListener 已由较新版本的 Java 运行时(类文件版本 55.0)编译,此版本的 Java 运行时仅识别 class 文件版本高达 52.0
我的 Java 版本:1.8.0_333,和 Apache Maven 3.8.4。
我该如何解决这个问题?
如果有人知道解决方案,请帮助我。
如评论中所述, TestNG 网站说:
要求
TestNG Upto v7.5:JDK 8 或更高版本。
TestNG v7.6.0 及更高版本:JDK 11 或更高版本。
所以可能的解决方案是:
如果您想使用 Java 8 作为您的开发平台,请使用比 v7.6.0 更旧的 TestNG 版本。 TestNG 版本可能会在您项目的 POM 文件中。
将您的开发平台升级到 Java 11 或更高版本。
如果您感到勇敢1 ,请尝试向后移植您用于在 Java 8(或更早版本)上运行的 TestNG (>= v7.6.0) 版本。
1 - 这可能是微不足道的或复杂的。 在你尝试之前你不会知道。
这发生在我身上,当我从另一个项目复制一个 maven、testng 项目时。 我只是缺少在 Eclipse 中添加 TestNG 外部库,这可以通过以下步骤完成:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.