如何在JAR中调用EAR中的jar文件库

时间:2015-03-05 17:31:46

标签: java ejb manifest libraries ear

我在EAR文件中从jar读取库时遇到问题。 这是我的项目树:

http://i.stack.imgur.com/FgVs2.jpg

在我的MANIFEST.MF文件中(jar的)我有这个: 清单 - 版本:1.0 类路径:lib / jboss-logging-spi.jar lib / jboss-messaging-client.jar

但是当我使用这个EJB时会抛出一个错误:

java.lang.NoClassDefFoundError:org / jboss / jms / client / delegate / ClientConnectionFactoryDe​​legate;嵌套异常是:java.rmi.RemoteException:EJB Exception :;嵌套异常是:         java.lang.NoClassDefFoundError:org / jboss / jms / client / delegate / ClientConnectionFactoryDe​​legate

我不知道该怎么做我尝试了不同的MANIFEST文件方式,但没有结果。任何帮助将不胜感激!!

1 个答案:

答案 0 :(得分:0)

确保已将EJB模块配置为META-INF / application.xml

<application>
  <display-name>My Application</display-name>

  <module>
    <ejb>ejbModule.jar</ejb>
  </module>      

  <library-directory>lib</library-directory>
</application>

此外,尝试添加jboss-all-client.jar:

  

用于捆绑的客户端/ jbossall-client.jar库   大多数jboss客户端库现在都引用它们   通过Class-Path清单条目。这允许包括交换   库(例如jboss-javaee.jar)无需重新打包   jbossall-client.jar中。另一方面,它需要你   jbossall-client.jar和其他客户端/ * .jar库一起使用   他们可以找到。