在动态Web项目中找不到导入的java项目中的类

时间:2015-01-16 14:03:37

标签: java rest jersey-2.0

我正在开发一个动态网络项目(REST服务),它导入我之前制作的java项目。现在我尝试将项目添加到构建路径以使用java项目中的类。写这篇文章时,它没有给出任何错误,但在运行时,服务会给出以下错误:

SEVERE: Servlet.service() for servlet [Jersey REST Service] in context with path [/pathname] threw exception [org.glassfish.jersey.server.ContainerException: java.lang.NoClassDefFoundError: Controller/Generator] with root cause
java.lang.ClassNotFoundException: Controller.Generator

任何人都可以告诉我错误和给定的上下文有什么问题吗? 否则我可以上传项目以进行进一步的调试。

该项目在Tomcat 7.0上运行

提前致谢

2 个答案:

答案 0 :(得分:3)

您的问题不是编译时间,而是类加载时的运行时。一些快速调试点...

  1. 如果要从Web项目生成WAR / EAR,请确保您的java项目在已安装的应用程序中的WEB-INF / lib中添加了.jar实用程序(文件夹可能因Web /应用程序而异)你正在使用的服务器)。

  2. 如果您使用IDE进行部署(例如Eclipse),请访问Web项目的“Property”选项卡,确保您的Java项目正确“Project Referenced”。您也可以将此java项目用作共享库,并从服务器管理控制台进行相应的配置,并根据您使用的服务器进行配置,它可能会有所不同。

  3. 希望这有帮助。

答案 1 :(得分:0)

我说你正在使用ANT来编译你的项目(An eclipse ANT projet)。右键单击您的项目,选择“部署程序集”'然后添加选项以选择要作为参考的项目。