java - 使用maven的java项目运行时出现NoClassDefFoundError

标签 java maven m2eclipse

我有一个 Maven Java 项目(比如 X 和 Y),我已将 Y 添加到项目 X(pom 文件)的依赖项列表中,并将 Y 导入到 X 中的类中...并将 jar 安装到 m2 存储库中并且maven构建成功,编译时没有错误,但在运行时它为Y中的类抛出了NoClassDefFoundError...我是这个maven的新手,请帮助我解决问题..

java.lang.NoClassDefFoundError: ../nw_diagnosis/SocketExceptionHandler

谢谢 斯里坎特

最佳答案

您的 X 项目是“jar”项目还是“war”项目?

如果您构建一个 jar,您的 Y 项目(我假设这是一个 jar)不会包含在您的 X 项目的类路径中,这是正常行为。

如果是这样,您要么必须在类路径中使用 Y.jar 来运行您的 X 项目,要么将您的 X 项目构建为“jar-with-dependencies”,请参见下文:

http://www.springone2gx.com/blog/scott_leberknight/2008/06/creating_executable_jars_using_the_maven_assembly_plugin

关于java - 使用maven的java项目运行时出现NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10173177/

相关文章:

java - 如何一键从 Eclipse 运行多个 Maven 目标

eclipse - 如何在eclipse中运行maven项目

java - JVM 如何实现可变参数?

java - 在已排序行的矩阵中找到第 K 个最小的元素

maven - 我可以在运行时指定一个 Maven project.artifactId 吗?

Maven 程序集插件和资源

java - 为什么将项目布局资源与Java源代码分开?

java - TAB 键在 NetBeans 上不起作用

java - 调用 glTexImage2D 清除数据缓冲区

maven - 如何将 Maven 项目配置为不期望 Eclipse 中的资源目录