java - 由于 java.lang.NoClassDefFoundError 无法运行代码

标签 java eclipse noclassdeffounderror jsprit

我正在调查 jsprit图书馆。为此,我刚刚在 Eclipse 中创建了一个新项目并复制粘贴了 demo example class 。然后我将所有 jar 添加到路径中,包括 log4j-1.2.17.jar。尽管如此,由于以下错误,我无法执行演示代码:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/logging/log4j/LogManager
    at jsprit.core.problem.vehicle.VehicleImpl$Builder.<clinit>(VehicleImpl.java:108)
    at com.test.jsprit.main(jsprit.java:49)
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.LogManager
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 2 more

这实际上意味着什么以及如何解决这个问题?这是否意味着丢失了其他一些 *.jar 文件?

更新:

错误发生在以下行:

Builder vehicleBuilder = VehicleImpl.Builder.newInstance("vehicle");

最佳答案

您使用的 log4j 库版本错误。您需要 2.x 版本。

参见:

LogManager (Version 1.x)

LogManager (Version 2.x)

关于java - 由于 java.lang.NoClassDefFoundError 无法运行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34663571/

相关文章:

java - 相机翻转动画使用TextureView

java - 如何使 JAX-RS uri 对响应进行编码

Java 程序运行一段时间后变慢

java - 在静态与非静态上下文中创建 SLF4J 记录器的开销是多少?

java - WorkbenchWindowControlContribution 未在 Eclipse Neon 中完全显示

java - java Netbeans JTL 中的 ClassDefNotFound 和 ClassNotFoundException

java - Eclipse - Maven - 依赖关系没有自动反射(reflect)

python - 如何在 Eclipse/Python/Appengine 中使用持久本地 NDB 数据进行调试?

java - 使用ant时出现NoClassDefFoundError

scalatra 2.2.0升级遇到NoClassDefFoundError :GenTraversableLike