WebSphere - 通用jar中接口的ClassNotFoundException

时间:2014-04-01 06:36:45

标签: java-ee websphere ear rad

在这里遇到WAS 8的一点问题。

我有以下结构:

ear file
    META-INF/
    ejb.jar
    web.war
    (common.jar)

common.jar包含ejb,war和其他应用程序(RMI)的接口。 在ejb.jar中,有一个使用common.jar接口的UserServiceImpl。 虽然部署WebSphere抱怨他找不到公共接口类。

我试图在ejb文件中使用lib文件夹将ear.jar直接绑定在ear文件中。什么都行不通(在WebSphere上)

奇怪的是,如果我使用RAD进行部署,一切都还可以。当我导出或构建(通过maven)我收到此错误。从RAD工作的部署耳朵直接不包含更多,RAD可能会改变某些东西,但我不知道是什么。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您提到的选项中包含:

  1. 如果common.jar直接放在EAR文件中,那么其他模块必须引用相应META-INF / MANIFEST.MF文件的Class-Path中的common.jar。我怀疑RAD正在为你做这件事。

  2. 如果使用lib文件夹将common.jar放在EAR中,则application.xml不能存在(这意味着EE 5或更高版本),或者如果存在,则必须包含version =“5”或更晚。

  3. 库不能直接放在EJB JAR中。只有将common.jar的内容合并到EJB JAR中时,此方法才有效。