Eclipse项目vs构建路径



我正在构建一个围绕spymemcached客户端包装一些代码的库。这被称为CacheClient。这是一个简单的Java项目。我把spymemcached.jar放到它的lib文件夹中。

下面是它的样子,你也可以看到构建路径设置:

库:CacheClient项目:CacheClient .jar

  • 自由
    • spymemcached.jar

Java Build Path/Libraries选项卡spymemcache .jar - CacheClient/lib/spymemcache .jar

我正在做的是我正在构建一个简单的java web项目,它使用这个库。

WebApp: ServiceWebApp Project: ServiceWebApp .war

  • WebContent
    • web - inf
      • 自由

Java Build Path/Projects选项卡:CacheClient

所以,我的Webapp的构建路径被设置为使用CacheClient项目。我将cachclient .jar复制到tomcat的lib目录,并部署ServiceWebApp。

当我运行web应用程序时,它失败了,因为它说我的CacheClient代码正在寻找spymemcached类(ClassNotFoundException)。

我可以通过将spymemcached.jar放入tomcat的lib目录来解决这个问题,但如果有其他解决方案就更好了。

欢迎任何建议。

谢谢,

让这个库在你的web应用中可用的最简单的方法是把这个库的jar放到你的web - inf/lib目录下。

如果你不想手工做,查看这个链接,了解如何自动完成:使用Eclipse/Tomcat自动添加第三方jar到WEB-INF/lib

在您的情况下,cachecclient .jar依赖于spymemcached.jar。但是,当构建cachclient .jar时,它不会打包在spymemcached.jar中。因此,仅仅在tomcat/lib文件夹中复制cachclient .jar是不够的。首先,复制tomcat lib文件夹中的jar文件并不是一个好的做法。

你能做的就是复制你的两个jar文件servicewebapp。war> WenContent>WEB-INF>lib应该可以工作

最新更新