NoClassDefFound意味着无法找到该类?

时间:2015-03-07 10:26:23

标签: java netbeans classpath packages noclassdeffounderror

我不会在NoClassDefFoundError的背景下理解running an OpenEJB client

thufir@doge:~$ 
thufir@doge:~$ java -classpath .:NetBeansProjects/HelloClient/dist/HelloClient.jar:apache-openejb-4.7.1/lib/openejb-client-4.7.1.jar org.acme.HelloClient
Exception in thread "main" java.lang.NoClassDefFoundError: javax/ejb/EJBHome

项目的遗失类EJBHomein the libray

libraries

然而,并没有出现在清单中。如何强制NetBeans将JAR添加到类路径中(如果这是解决方案),或者在执行期间将JAR包含在类路径中?

2 个答案:

答案 0 :(得分:2)

在执行时将jar文件包含在类路径中,只需将其放入您已经获得的jar文件列表中 - 您已经指定openejb-client-4.7.1.jar等;只需将javaee-api-7.0.jar添加到该列表中(当然,使用正确的目录)。

答案 1 :(得分:2)

NoClassDefFoundError表示该类在编译时出现,但在运行时不存在。 所以可能你的部署没有那个级别。