Deployment JBoss EAR部署失败,因为WAR类无法从EAR/lib文件夹中找到JAR

Deployment JBoss EAR部署失败,因为WAR类无法从EAR/lib文件夹中找到JAR,deployment,war,ear,wildfly-10,jboss-eap-7,Deployment,War,Ear,Wildfly 10,Jboss Eap 7,我正在使用JBoss EAP 7,希望以独立模式部署EAR文件(使用standalone ha.xml) 我浏览了StackOverflow/JBoss论坛上几乎所有可用的内容,但无法使我的部署正常工作(正确)。我已经尽我所能地遵循了,但是EAR的部署在控制台上还是出现了异常,因为WAR/WEB-INF/lib中的jar文件无法在EAR/lib文件夹中看到jar文件。我不知道我做错了什么 结构 EAR-application.xml: <?xml version="1.0" encodin

我正在使用JBoss EAP 7,希望以独立模式部署EAR文件(使用standalone ha.xml)

我浏览了StackOverflow/JBoss论坛上几乎所有可用的内容,但无法使我的部署正常工作(正确)。我已经尽我所能地遵循了,但是EAR的部署在控制台上还是出现了异常,因为WAR/WEB-INF/lib中的jar文件无法在EAR/lib文件夹中看到jar文件。我不知道我做错了什么

结构 EAR-application.xml:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/application_7.xsd" version="7">
  <display-name>myear</display-name>
  <module>
    <web>
      <web-uri>myWAR.war</web-uri>
      <context-root>/mywar</context-root>
    </web>
  </module>
  <library-directory>lib</library-directory>
</application>

迈尔
我的战争
/我的战争
解放党
EAR-jboss-deployment-structure.xml:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <deployment>
    <dependencies>
      <module name="com.organization.global" export="true" />
    </dependencies>
  </deployment>
  <!-- Having/Not having below sub-deployment has no effect -->
  <sub-deployment name="myWAR.war">
    <dependencies/>
  </sub-deployment>
</jboss-deployment-structure>

如果我将
a.jar
复制到
WAR/WEB-INF/lib/
文件夹中,则部署成功,否则会出现异常:
,原因是:java.lang.NoClassDefFoundError
与特定于a.jar的类相关。我希望我的WAR能够访问EAR/lib中所有放在一起的罐子

我在一个论坛上读到,lib文件夹中的jar/classes应该对EAR中的所有模块都可用,但有时它们不会自动添加,但我找不到如何添加它们的解决方案


任何指导都将不胜感激。提前谢谢

在JBoss EAP 7中,要访问war内部ear中的
lib
文件,可以尝试在war的
web.xml
中添加上下文参数

要创建环境变量,请在终端中尝试以下操作:

export JAR_HOME=../jboss-eap-7.1/standalone/deployments/example.ear(Please add value equivalent to your environment and ear's path)
export PATH=$PATH:$JAR_HOME
Add this variable to web.xml as file:${JAR_HOME}/lib/example.jar

请在您的类中阅读此上下文参数,并在“内部战争”中演示。

它肯定会起作用。这是一种典型的使用模式。也许可以尝试创建一个简单的EAR部署,看看是否可以隔离问题。
export JAR_HOME=../jboss-eap-7.1/standalone/deployments/example.ear(Please add value equivalent to your environment and ear's path)
export PATH=$PATH:$JAR_HOME
Add this variable to web.xml as file:${JAR_HOME}/lib/example.jar