我在运行时(maven运行时范围)链接的依赖性很少(来自logback数据包)。项目编译,但在运行时抛出NoClassDefFoundError
(命令为java -jar my_uncool.jar
)。
我用-verbose:class
选项运行java并没有看到我的logback加载。我检查了lib文件夹(./WEB-INF/lib/
)并获得了所有必需的logback's *.jar
文件。
可能是什么问题? 有什么方法可以查看java.lang.NoClassDefFoundError异常的原因?
答案 0 :(得分:1)
您需要指定罐子所在的类路径。
java -cp "./WEB-INF/lib/*.jar" -jar my_uncool.jar
您可以按如下方式向类路径添加更多路径。
java -cp "./WEB-INF/lib/*.jar;./WEB-INF/lib/another/path/*.jar" -jar my_uncool.jar