【发布时间】:2011-04-09 06:03:30
【问题描述】:
我正在尝试将包含 ejb 应用程序的 ear 部署到 weblogic 9.2 服务器中。
这个耳朵是使用 maven 创建的(它本身使用 ear ant 任务)。 Maven 产生以下结构:
myApp.ear
- META-INF
- application
- MANIFEST.MF
- dependency-1.jar
- dependency-2.jar
- ...
- dependency-n.jar
- myEjb.jar
清单包含一个看起来不错的类路径部分(列出了所有依赖项 jar)
当我尝试部署 ear 时,出现 NoClassDefFoundError 异常。
如果我把我所有的 jars 放在我域的 lib 目录中,ear 就成功部署了。
如果我将所有的 jar 放在一个名为 APP-INF/lib(weblogic 标准)的目录中,则 ear 也已成功部署。
myApp.ear
- META-INF
- application
- MANIFEST.MF
- APP-INF
- lib
- dependency-1.jar
- dependency-2.jar
- ...
- dependency-n.jar
- myEjb.jar
在同一个项目中,我有其他耳朵不使用运行正常的 APP-INF/lib 目录。
有人知道为什么 weblogic 无法部署我的耳朵吗?
经过一番调查,我找到了问题的根源:它是 myEjb.jar 模块的清单类路径。请参阅已接受回复中的评论。
非常感谢。
【问题讨论】:
标签: java deployment jakarta-ee weblogic ejb