如何解决java.lang.NoClassDefFoundError?

时间:2011-04-22 11:12:22

标签: java tomcat noclassdeffounderror tomcat7

我目前正在开发一个简单的Web项目,我正在使用Polarion的SDK。当尝试使用相应的* .jar-Files时,Tomcat 7会在启动时抛出以下错误消息:

SCHWERWIEGEND: Exception sending context initialized event to listener instance of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.NoClassDefFoundError: Lcom/polarion/alm/ws/client/session/SessionWebService;

根据我所进行的研究,Java正试图找到com.polarion.ws.client.session.SessionWebService的实例(因此领先的 L ) 。我已经检查了所需条目的类路径 - 它就在那里。

C:\Polarion\polarion\SDK\lib\com.polarion.alm.ws.client\wsclient.jar

到目前为止,我已经没有想法会出现什么问题。你有什么想法吗?

非常感谢! 西蒙

2 个答案:

答案 0 :(得分:7)

您不应该将库用于CLASSPATH中的webapps。您应该将它们放在webapp中的WEB-INF / lib中。

答案 1 :(得分:2)

部署和编译是不同的过程。你应该知道,你可以编译,但如果部署的应用程序无法访问必要的库,你会得到这个例外..如前面的答案所示,你应该把你的web应用程序的必要库WEB-INF / lib目录..