如何让JBoss爆炸部署的WAR文件?

时间:2009-01-28 11:54:54

标签: jboss web-applications

我在/usr/local/jboss-4.3/上在Ubuntu上运行JBoss 4.3。我已将我的应用程序作为WAR文件(即myapp.war)部署到/usr/local/jboss-4.3/server/myserver/deploy。但是,在deploy文件夹下似乎没有“爆炸”/ myapp目录,怎么回事?

我习惯在Windows上运行Tomcat,所以我对JBoss有点新鲜。当您向Tomcat使用WAR时,此WAR的物理内容将展开到/ myapp目录。有了这个,就可以修改Web应用程序下的文件,例如配置设置等。

我怎么能在JBoss中做到这一点?

6 个答案:

答案 0 :(得分:16)

您可以在“myapp.war”文件夹中解压缩.war内容,JBoss会将其视为已部署的应用程序,就像它是一个压缩战争一样。

更好的是,大多数IDE(Eclipse肯定,但我猜其他IDE,如Netbeans)允许您部署爆炸包而不是压缩.war,允许您只更改您修改的单个文件而不是整个.war包

答案 1 :(得分:2)

此链接非常有用:

http://community.jboss.org/wiki/DeployTipsAndBuildSampleScripts

文章关注的快速摘要:当JBoss中的应用程序构建/部署到来时,有许多可行的方法。这个wiki突出显示了几个构建/部署场景,以及步骤和相关的构建脚本示例。涵盖以下方法:

  • 使用JBossIDE进行点击/点击部署 - 对于不喜欢ANT构建脚本的用户

  • 爆炸式EAR,JAR,SAR,WAR部署(选项1) - 通过消除ANT复制任务最大限度地提高开发效率

  • 爆炸式EAR,JAR,SAR,WAR部署(选项2) - 将IDE与编译,构建和部署过程分开

  • 正常的EAR,JAR,SAR,WAR部署 - 部署压缩存档(使用群集/服务器场部署时必要

答案 2 :(得分:1)

当我从Eclipse导出.war文件并将其复制到(UAT或Prod)JBOSS Server 7.1.1最终AS部署目录,并启动Windows JBOSS服务时,面临同样的问题 .war文件已成功部署,但.war文件未解压缩或展开到部署文件夹中。

For This解决方案是将example.war爆炸文件夹(文件夹名称)复制到部署文件夹然后启动。并在standalon.xml中提到auto-deploye-explosion = true

答案 3 :(得分:0)

它在tmp文件夹中执行此操作......

但您可以在部署directoy中将该文件命名为“app.war”

答案 4 :(得分:0)

在standalone.xml中,我确实只看到这部分代码:

<subsystem xmlns="urn:jboss:domain:deployment-scanner:1.1">

我没有看到部署扫描程序参数,如:

auto-deploy-exploded" => false,

“auto-deploy-zipped”=&gt;真正, “deployment-timeout”=&gt; 60L,

等等。

答案 5 :(得分:-1)

我遇到了与JBoss 7完全相同的问题。我的ant脚本会将 .war 文件复制到JBoss deployments 文件夹( jboss-as-7.1 .1.Final / standalone / deploymentments 在我的系统中)但 .war 不会爆炸。 .war 可以通过管理CLI完全部署,因此它不是一个不满意的依赖或任何东西。当我指示我的Ant战争任务不压缩战争(将属性压缩设置为 false )时,它就解决了,如下所示:

...
<target name="war" depends="build">
  <mkdir dir="${build.dir}"/>
  <war
    compress="false"
    needxmlfile="false"
    basedir="${webroot.dir}"
    warfile="${build.dir}/${project.distname}.war">
    <exclude name="WEB-INF/${build.dir}/**"/>
    <exclude name="WEB-INF/src/**"/>
   </war>
</target>