当我将应用程序作为JAR文件运行时,我收到java.lang.ClassNotFoundException: javax.ejb.EJBObject
错误。在Eclipse中运行时,一切正常。
应用程序正确访问主类和main方法。但是当它尝试加载应用程序上下文时,它无法解析对EJB bean的引用。然后我得到以下错误:
Error creating bean with name 'bc' defined in class path resource [blabla.xml]:
Initialization of bean failed;
nested exception is
java.lang.NoClassDefFoundError: javax/ejb/EJBObject
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275)
...
Caused by:
java.lang.ClassNotFoundException: javax.ejb.EJBObject
我在JAR文件中包含了Maven的所有运行时范围的依赖项。
您是否知道有关此错误的更多信息?
答案 0 :(得分:1)
要检查的一小部分内容:
EJBObject
类是否位于具有provided
范围的依赖项中?EJBObject
类的JAR是否真的在类路径上?即,您是在运行JAR时将其添加到类路径中,还是使用onejar-plugin将依赖项放入JAR中?myproject.one-jar.jar
)创建的JAR,而不是没有依赖项(myproject.jar
)的JAR?