14

我下载了 JBoss Application Server 5 并成功部署了一个 war 文件。我将具有简单 index.jsp 文件的 Hello.war 复制粘贴到

\jboss-5.1.0.GA-jdk6\jboss-5.1.0.GA\server\default\deploy

它工作得很好。

但是,当我使用 JBoss AS 7 并在此处部署 war 文件时,它没有被执行。

jboss-as-7.0.0.Final\jboss-as-7.0.0.Final\standalone\deployments

如何部署它?

编辑:我用谷歌搜索但无法找到信息,因为 JBoss AS 7 相对较新。

4

6 回答 6

22

实际上,对于最新的JBOSS 7 AS,我们.dodeploy甚至需要一个用于存档的标记。所以添加一个标记来触发部署。

就我而言,我Hello.war.deployed在同一目录中添加了一个文件,然后一切正常。

希望这对某人有帮助!

于 2011-08-12T16:28:49.317 回答
17

阅读文件 $AS/standalone/deployments/README.txt

  • 您有两种不同的模式:自动部署模式和手动部署模式
  • 对于手动部署模式,您必须按照其他帖子中的说明放置标记文件
  • 对于自动部署模式:这是通过standalone.xml 配置文件中部署扫描器元素上的“自动部署”属性完成的:

    <deployment-scanner scan-interval="5000" relative-to="jboss.server.base.dir"
    path="deployments" auto-deploy-zipped="true" **auto-deploy-exploded="true"**/>
    
于 2012-11-13T22:11:22.523 回答
9

我基于jboss 部署文档构建了以下用于部署的 ant 任务:

<target name="deploy" depends="jboss.environment, buildwar">
    <!-- Build path for deployed war-file -->
    <property name="deployed.war" value="${jboss.home}/${jboss.deploy.dir}/${war.filename}" />

    <!-- remove current deployed war -->
    <delete file="${deployed.war}.deployed" failonerror="false" />
    <waitfor maxwait="10" maxwaitunit="second">
        <available file="${deployed.war}.undeployed" />
    </waitfor>
    <delete dir="${deployed.war}" />

    <!-- copy war-file -->
    <copy file="${war.filename}" todir="${jboss.home}/${jboss.deploy.dir}" />

    <!-- start deployment -->
    <echo>start deployment ...</echo>
    <touch file="${deployed.war}.dodeploy" />

    <!-- wait for deployment to complete -->
    <waitfor maxwait="10" maxwaitunit="second">
        <available file="${deployed.war}.deployed" />
    </waitfor>
    <echo>deployment ok!</echo>
</target>

${jboss.deploy.dir}被设定为standalone/deployments

于 2012-05-13T07:02:21.237 回答
3

您能否提供有关部署失败的更多信息?应用程序部署失败是否会触发.war.failed标记文件?

独立实例部署文件夹默认启用自动部署。自动部署模式通过使用一系列标记文件向运行时指示部署的操作和状态,自动执行与手动模式相同的功能。例如,您可以使用 unix/linux "touch" 命令创建一个.war.dodeploy标记文件来告诉运行时部署应用程序。

了解总共有五种将应用程序部署到 AS7 的方法可能会很有用。我在这里的另一个主题中谈到了这一点:JBoss AS7 *.dodeploy 文件

我倾向于使用管理控制台进行应用程序管理,但我知道管理 CLI 在其他用途​​中也很受欢迎。两者都与部署文件夹进程分开。看看您如何使用其他方法来满足您的需求。

如果您在 Admin Guide 中搜索“deploy”,您可以看到有关 Deployment Scanner 的部分和更一般的部署部分(包括 CLI):https ://docs.jboss.org/author/display/AS7/Admin +指南

于 2011-11-17T01:24:29.640 回答
1

只需将war文件复制到standalone/deployments/文件夹,它应该会自动部署它。它还会在部署应用程序时创建 your_app_name.deployed 文件。还要确保使用 bin/standalone.sh 脚本启动服务器。

于 2011-08-10T17:56:27.737 回答
-2

打开控制台并导航到 bin 文件夹并运行

JBOSS_HOME/bin > stanalone.sh

一旦它启动并运行,只需复制过去的战争文件

standalone/deployments folder

对于jboss 7.1来说可能就是这样

于 2012-11-16T17:27:36.063 回答