JBoss5应用程序能否访问EAR结构之外的JAR

JBoss5应用程序能否访问EAR结构之外的JAR,jboss,jboss5.x,classloader,Jboss,Jboss5.x,Classloader,当jar被打包在EAR/lib中时,一切都很好,但我不能使用它 方法并需要从文件系统中引用它们(可能使用绝对/相对路径) 另外,将JAR添加到系统类路径(使用conf/jboss service.xml)也不是一个选项 我已经在jboss-app.xml中为应用程序定义了使用加载器存储库的作用域类加载 应用程序的作用域类加载器有没有办法从EAR结构外部访问库?技术上说,是的,至少在JBoss4.2中是这样,幸运的是,它在5中也能工作 这利用了这样一个事实,即当JBoss的EARDeployer读

当jar被打包在EAR/lib中时,一切都很好,但我不能使用它 方法并需要从文件系统中引用它们(可能使用绝对/相对路径) 另外,将JAR添加到系统类路径(使用conf/jboss service.xml)也不是一个选项

我已经在jboss-app.xml中为应用程序定义了使用加载器存储库的作用域类加载


应用程序的作用域类加载器有没有办法从EAR结构外部访问库?

技术上说,是的,至少在JBoss4.2中是这样,幸运的是,它在5中也能工作

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


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

从技术上讲,是的,至少在JBoss4.2中是这样,幸运的是,它在5中也能工作

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


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

谢谢,但这似乎不起作用。只要相对路径在EAR结构内,它就会工作。但是当路径指向外部JAR时失败。您能否将
应用程序.xml
的内容添加到问题中?FindingNemoEar FindingNemoEarWeb.war FindingNemo.././abc.jar谢谢,但这似乎不起作用。只要相对路径在EAR结构内,它就会工作。但是当路径指向外部JAR时失败。您能否将
应用程序.xml
的内容添加到问题中?FindingNemoEar FindingNemoEarWeb.war FindingNemo../。/abc.jar