2009-12-24 15 views
1

当罐子打包在EAR/lib中时,一切正常,但我不能使用这种方法,并且需要从文件系统中引用它们(也许使用绝对/相对路径) 将jar添加到系统类路径(使用conf/jboss-service.xml)不是一个选项。JBoss 5应用程序可以在EAR结构之外访问罐子

我已经定义了一个使用架仓库里面的jboss-app.xml中

应用范围的类加载是否有办法让应用程序可以从EAR结构外部访问库的作用域的类加载器?

回答

1

从技术上来说,是的,至少在JBoss 4.2中,运气好的话它也能在5中工作。

这样做的好处是当JBoss的EARDeployer读取application.xml文件中每个库的路径时,它会解析相对于爆炸EAR的基本目录的路径。如果将相对路径放入适当数量的../条目中,则路径将解析到您喜欢的文件系统上的任何位置,只要它可作为相对于EAR部署位置的路径导航即可(例如,在Windows上,它必须在同一个驱动器上)。

请注意,这是而不是的标准行为,甚至不能保证在不同版本的JBoss之间工作。

+0

谢谢,但这似乎没有工作。只要相对路径在EAR结构内就行。但当路径通向外部罐子时失败。 – Shreeni 2009-12-29 12:35:33

+0

您可以将“application.xml”的内容添加到问题中吗? – skaffman 2009-12-29 12:40:05

+0

<?xml version =“1.0”encoding =“UTF-8”?> <!DOCTYPE application PUBLIC“ - // Sun Microsystems,Inc. //DTD J2EE Application 1.3 // EN”“http:// java。 sun.com/dtd/application_1_3.dtd “> <应用ID =” APPLICATION_ID “> \t <显示名称> FindingNemoEar \t <模块ID =” WebModule_1158763557391" > \t \t \t \t \t FindingNemoEarWeb.war \t \t \t <上下文根> FindingNemo \t \t \t \t \t \t ../../abc.jar \t Shreeni 2009-12-30 05:37:20

相关问题