在Eclipse构建路径中使用用户库时出现ClassNotFoundException

pkln4tw6  于 2023-10-18  发布在  Eclipse
关注(0)|答案(2)|浏览(132)

我使用Eclipse 3.7(STS),在IDE中运行Tomcat 7。我创建了一个新的动态Web项目,并将一个JSP文件添加到Web内容根文件夹中。我可以运行Tomcat并从Eclipse中访问JSP,没有任何问题。
我已经从用户库中添加了一些第三方插件到项目中(我没有使用maven或自动依赖管理)。在JSP中,我引用了项目的JavaScript文件中的一个类,我可以毫无问题地编译它,但是当我在Tomcat上部署时,JSP会抛出ClassNotFoundException。很明显,Tomcat无法从我的库设置中找到这些参数。我尝试为Tomcat Server创建一个Run As配置,并将类路径设置为与项目的类路径设置相匹配,但仍然遇到相同的classnotfound问题。
我可以通过手动将所有项目JAR复制到WEB-INF/lib目录来解决这个问题,这样webapp就可以找到所有依赖项,但这是荒谬的,我不希望这是解决方案,因为这是一个维护噩梦。
我是不是漏了什么?

kmpatx3s

kmpatx3s1#

在项目的属性中,转到 * 部署程序集 *。在那里添加buildpath条目,以及您手动添加的用户库。它将在部署的WAR的/WEB-INF/lib中结束。

参见:

insrf1ej

insrf1ej2#

您需要将jar文件复制到WEB-INF/lib文件夹:那才是他们应该待的地方
Eclipse应该为您提供生成一个包含所有依赖项的WAR文件的选项:我已经很久没有使用Web工具了,但是无论如何,所有的依赖项都必须在WEB-INF/lib中,否则类加载器将无法找到它们。

相关问题