Hello! 欢迎来到小浪资源网!


Java打包成可执行JAR文件时出现NoClassDefFoundError怎么办?


Java打包成可执行JAR文件时出现NoClassDefFoundError怎么办?

Java 打包可执行 JAR 时遭遇 NoClassDefFoundError

Java 中使用 gradle 将项目打包成可执行 JAR 文件时,出现 NoClassDefFoundError 异常报错,指出无法找到类定义。该错误往往提示类路径不正确。

具体问题中,引入第三方 JAR 包但打包后运行时报错,可能是由于以下原因:

  • JAR 包结构不正确:第三方 JAR 包中可能包含与项目中版本不同的文件。确保 JAR 包中的类路径与项目代码中使用的版本一致。
  • Java 版本不兼容:打包使用的JDK版本可能与ide中运行代码的JDK版本不同。高版本的JDK可能不支持低版本的Java包。请尝试切换到与项目代码兼容的JDK版本。

根据问题提供的代码片段,建议将JDK版本切换为1.8。这是因为在JDK 20中,java.xml.transform包不再受支持。使用JDK 1.8后,打包后的JAR文件即可正常运行。

立即学习Java免费学习笔记(深入)”;

相关阅读