我正在使用Maven和WebLogic。使用Maven构建我的应用程序时,我可以使用管理控制台在我的本地Weblogic上手动成功安装它。
尝试使用Eclipse IDE在服务器上部署同一个应用程序时,我得到一个 NoClassDefFoundError 。 (我尝试了"发布为虚拟应用程序" 和"在Oracle Weblogic Server工具中发布为爆炸式存档" 蚀)。
我的申请结构如下:
MyApp.ear contains:
- MyWar1.war
- MyWar2.war
- MyEjb.jar (ejb module, using maven-ejb-plugin)
- MyJar.jar (another project, as dependency)
这个MyJar.jar
似乎在类路径中找不到。我已经检查过,在Eclipse设置中,这个项目包含在 Java Build Path \ Project , Java Build Path / Order and Export 和 MyEjb
项目的部署程序集。
我还检查了Eclipse eclipse-workspace\.metadata\.plugins\org.eclipse.core.resources\.projects\MyApp
构建的文件夹,在那里我可以看到带有相应APP-INF\lib\MyJar.jar
文件的文件夹.class
。当我尝试手动安装此文件夹时,我得到了同样的错误(NoClassDefFoundError)。
我使用的是Weblogic 10.3.3,Maven 3.2.1,Eclipse 4.4.0(20140612-0600)和Oracle WebLogic Server Tools 7.2.1.201407111426。
我有什么想法可以调查这个问题吗?
答案 0 :(得分:1)
将依赖项从APP-INF/lib/
移动到lib/
文件夹似乎可以解决问题,但我不明白为什么。