首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JBoss EAR部署顺序

JBoss EAR部署顺序
EN

Stack Overflow用户
提问于 2013-11-13 16:27:48
回答 1查看 2.8K关注 0票数 3

我有5只耳朵需要部署。其中一个是local-configuration-ear-0.3.5-SNAPSHOT.ear,它是所有其他元素的依赖,它们在部署时需要它,即需要首先部署local-configuration-ear-0.3.5-SNAPSHOT.ear。所有5个耳朵都位于deployments文件夹中。

我读过这里,我可以使用jboss-deployment-structure.xml来管理EAR部署的顺序,但是我遇到了一些问题。我制作的文件如下所示:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
   <deployment>
       <dependencies>
           <module name="deployment.local-configuration-ear-0.3.5-SNAPSHOT.ear" />
       </dependencies>
   </deployment>
</jboss-deployment-structure>

但是,在使用这个描述符部署EAR之后,我收到了以下错误:

代码语言:javascript
复制
15:01:29,752 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC00001: Failed to start service jboss.module.service."deployment.asterix-connector-ear-0.3.5-SNAPSHOT.ear".main: org.jboss.msc.service.StartException in s ervice jboss.module.service."deployment.asterix-connector-ear-0.3.5-SNAPSHOT.ear".main: Failed to load module: deployment.asterix-connector-ear-0.3.5-SNAPSHOT.ear:main
    at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:91) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) [rt.jar:1.6.0_24]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.6.0_24]
    at java.lang.Thread.run(Thread.java:679) [rt.jar:1.6.0_24]
Caused by: org.jboss.modules.ModuleNotFoundException: deployment.local-configuration-ear-0.3.5-SNAPSHOT:main
    at org.jboss.modules.Module.addPaths(Module.java:854)
    at org.jboss.modules.Module.link(Module.java:1181)
    at org.jboss.modules.Module.relink(Module.java:1211)
    at org.jboss.modules.ModuleLoader.relink(ModuleLoader.java:445)
    at org.jboss.as.server.moduleservice.ServiceModuleLoader.relinkModule(ServiceModuleLoader.java:204) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:71) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    ... 5 more

我做错了什么,是否有一种方法可以使用Maven生成jboss-deployment-structure.xml,以便我可以编程地将版本号附加到EAR文件名?

编辑

我还尝试将一个jboss-all.xml文件添加到META-INF中,但没有帮助:

代码语言:javascript
复制
<jboss umlns="urn:jboss:1.0">
    <jboss-deployment-dependencies xmlns="urn:jboss:deployment-dependencies:1.0">
        <dependency name="local-configuration-ear-${project.version}.ear" />
    </jboss-deployment-dependencies>
</jboss>

-with <filtering>true</filtering>maven-ear-plugin配置中。我在EAR归档文件中进行了检查,项目版本设置正确,但人工制品有时仍以不正确的顺序部署。

EN

回答 1

Stack Overflow用户

发布于 2013-11-15 17:22:06

该链接描述如何在EAR内部执行部署命令,而不是在两个EAR之间执行部署命令。

您应该配置带有部署依赖项的jboss-all.xml。

内容应该如下所示:

代码语言:javascript
复制
<jboss umlns="urn:jboss:1.0">
    <jboss-deployment-dependencies xmlns="urn:jboss:deployment-dependencies:1.0">
        <dependency name="app1.ear" />
        <dependency name="app2.ear" />
        <dependency name="app3.ear" />
    </jboss-deployment-dependencies>
</jboss>

并添加到您的所有耳朵,但确保您不做循环的指示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19959140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档