如何在JBoss上一个接一个地部署.war

时间:2016-05-04 10:11:24

标签: java jboss jboss7.x war

有没有办法在JBoss 7上定义.war部署的顺序? 我想要完成的是,在JBoss启动时,它首先部署.war A然后.war B.

我需要这个,因为.war A是一个在.war B的启动时使用的服务!

2 个答案:

答案 0 :(得分:2)

您必须通过在jboss-all.xml文件夹上创建META-INF文件来指定对B战的依赖关系,其内容如下:

 <jboss umlns="urn:jboss:1.0">
  <jboss-deployment-dependencies xmlns="urn:jboss:deployment-dependencies:1.0">
    <dependency name="A.war" />
  </jboss-deployment-dependencies>
</jboss> 

此处解释了此过程Control the order of Deployed Applications on JBoss

答案 1 :(得分:0)

正如this JBoss的论坛主题中所提到的,为了确保首先部署A.war而不是B.war,你应该在你的下面创建一个 MANIFEST 文件B.war的 src / main / webapp / META-INF 文件夹,包含以下条目:

dependencies: deployment.A.war

此外,如果您需要从B.war访问A.war类,您还应该在B.war的 jboss-deployment-structure.xml > src / main / webapp / WEB-INF 文件夹,包含以下内容:

<?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" 
    xsi:schemaLocation="urn:jboss:deployment-structure:1.2 http://www.jboss.org/schema/jbossas/jboss-deployment-structure-1_2.xsd">

    <deployment>
        <dependencies>
            <module name="deployment.A.war" export="true"/>
        </dependencies>
    </deployment>
</jboss-deployment-structure>

您还可以查看JBoss AS 7类加载documentation