我正在将一个耳朵 (myear.ear) 应用程序部署到 WildFly 9.0.2。ear 包含一个ear 模块,我们称之为 myjar.jar。
另外,我有一个外部自定义JBoss 模块。在该模块中,我需要(不管原因)调用打包在 myjar.jar 中的类。
有没有可能???
JBoss 模块 如下module.xml
所示:
<module xmlns="urn:jboss:module:1.1" name="path.to.module.dir">
<resources>
<resource-root path="..."/>
</resources>
<dependencies>
<module name="deployment.myear.ear.myjar.jar" />
</dependencies>
</module>
如果我可以从该自定义模块中处理打包在耳朵中的 jar,我应该如何指定模块名称。上面给出了以下错误:
Caused by: org.jboss.modules.ModuleLoadError: deployment.myear.ear.myjar.jar:main
at org.jboss.modules.ModuleLoadException.toError(ModuleLoadException.java:74)
at org.jboss.modules.Module.getPathsUnchecked(Module.java:1384)
at org.jboss.modules.Module.loadModuleClass(Module.java:555)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:404)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:385)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:130)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:353)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:432)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:269)
at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:77)
at org.jboss.modules.Module.loadModuleClass(Module.java:560)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:404)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:385)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:130)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)