Eclipse WTP:Glassfish 在类路径中不包含 WEB-INF/lib
我在 eclipse helios 中启动了一个新的动态 Web 项目。我将 glassfish 集成到 eclipse 中,到目前为止效果很好。除了一件事: 我将我的库(jdbc、log4j 等)放在 WEB-INF/lib 中。 Eclipse 将该文件正确部署到 glassfish,但 glassfish 不将该目录包含在其类路径中,因此我的应用程序将无法运行(因为它找不到 jars)。
当我在 eclipse 中编辑服务器的“启动配置”时,我可以在“类路径”下手动添加库,但这不会改变任何事情。
仅当我手动将 jar 复制到 glassfish 的 lib/ext 文件夹时,才会包含这些库。
当我使用 tomcat 作为服务器时,它可以工作,库位于 tomcat 的类路径中。但我想使用 glassfish 而不手动复制库。
有什么想法吗?
I started a new dynamic web project in eclipse helios. I integrated glassfish into eclipse and it works fine so far. Except one thing:
I place my libraries (jdbc, log4j etc.) in WEB-INF/lib. Eclipse deploys that files correctly to glassfish, but glassfish does not include that directory in its classpath, so my app won't run (because it can't find the jars).
When I edit the server's "launch configuration" in eclipse, I can manually add the libs under "Classpath", but that don't change a thing.
Only when I manully copy the jars to glassfish's lib/ext folder, the libs are included.
When I used tomcat as a server it works, the libs are in tomcat's classpath. But I want to use glassfish without copying the libs manually.
Any idea?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不确定如何在项目中添加库。
尝试显示项目属性选项卡,选择部署程序集节点部分,然后单击添加按钮。从文件系统或项目中选择档案(如果您的库也是 Eclipse j2se 项目)。
这应该有效。
希望您使用更新中心提供的最新 Eclipse 3.6 SR1 和最新 glassfish 插件: http://download .java.net/glassfish/eclipse/helios
Not sure how do you add the libs in your project.
Try to show the project properties tab, select the Deployment Assembly node section, and click the add button. Select archives from file system or project (if your lib i also an Eclipse j2se project).
This should work.
Hoping you use the latest Eclipse 3.6 SR1 and the latest glassfish plugin from the update Center: http://download.java.net/glassfish/eclipse/helios
我的servlet没有找到jdbc驱动程序,所以我认为它缺少一个lib。调用“ClassForName”解决了问题。这对我来说似乎很奇怪,因为在 SE 上下文中使用时不需要这样做。
所以 Eclipse 正确部署了库,只需要一点额外的代码。
My servlet did not find the jdbc driver, so I thought it was a lib missing. Calling “ClassForName“ solved the problem. This seems strange to me, as this is not needed when used in the SE context.
So eclipse is correctly deploying the libs, just a little extra code is needed.