【问题标题】:how can I deploy a WAR file to Wildfly?如何将 WAR 文件部署到 Wildfly?
【发布时间】:2019-10-27 05:59:15
【问题描述】:

关于deploying 一个WAR 文件到Wildfly,file be copied 应该到哪里?

我没有看到文件在哪里:

thufir@dur:~/java/wildfly$ 
thufir@dur:~/java/wildfly$ tree wildfly-17.0.0.Beta1  | grep wildflyMaps.war
│       └── wildflyMaps.war
thufir@dur:~/java/wildfly$ 

好像是exploded for部署:

  1. 回复:部署 ehugonnet Apprentice ehugonnet 2017 年 8 月 21 日凌晨 2:47 后看不到 .war(回复 Claudio Miranda)

在运行期间,启用的 war 文件由 tmp 中的 vfs 展开 目录。这些文件将在停止/重新启动/禁用时被删除。

参考内容在内容数据目录中,用于重新创建 tmp 文件。

【问题讨论】:

  • 我假设您没有在独立模式下部署,因此在域模式下您无法复制文件进行部署,您必须通过 cli 或在 UI 上部署文件获取在 ~/data/content/ 下保存为 content
  • 有没有可能从独立模式开始?
  • 没有独立模式和域模式完全不同。您不能在域模式下使用扫描仪,因此“唯一”的解决方案是将管理 API 与 jboss-cli 或 web-console 一起使用。

标签: java deployment wildfly war


【解决方案1】:

独立模式


独立模式下部署的标准位置是Wildfly_Home/standalone/deployments,因此您可以通过Java 或任何其他方式将war 复制到该文件夹​​。它将在启动服务器时部署。实际上,即使 Wildfly 正在运行,它也会自动部署(如果没有,只需创建一个文件并将其命名为 wildflyMaps.war.dodeploy)。


域模式


有了这个,你不能只是将war 文件复制到目录中。可以通过 cli 完成,但更简单的是登录管理控制台并转到部署部分。

部署后,如果您打开domain.xml,您会看到如下内容:

deployments
    deployment name="wildflyMaps.war" runtime-name="wildflyMaps.war"
             content sha1="d991471f79045413a7c63b8c2b5d4dc345be8808"/
        /deployment
/deployments

使用上面的示例,您将在以下位置找到已部署的文件:

Wildfly_Home/data/content/d9/91471f79045413a7c63b8c2b5d4dc345be8808

其中有一个名为content 的文件。将其复制到别处并将其重命名为anything.war,您可以打开它并查看它是您部署的war

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 2011-09-02
    • 1970-01-01
    相关资源
    最近更新 更多