1

我在迁移后开始使用 AS 7 并尝试确定热部署的工作方式是否与上传应用程序的控制台方法相同?

如果热部署保留在部署文件夹中,那么应用程序在控制台(或 cli?)加载时“去”到哪里。我应该在管理员角色中使用哪种方法?如果我同时使用两者会发生什么?

4

2 回答 2

2

如果您使用 hotdeploy,您的应用程序将保留在“deployments”中,否则如果您使用 cli,您的应用程序将保留在“data”文件夹中。

您可以同时使用 hotdeploy 或 cli deploy ,最后部署的是当前。

这里是关于部署命令的文档:

[standalone@localhost:9999 /] 部署 --help 概要

deploy (file_path [--name=deployment_name] [--runtime_name=deployment_runtime_name] [--force | --disabled] |

--name=deployment_name) [--server-groups=group_name (,group_name)* | --all-server-groups] [--headers={operation_header (;operation_header)*}]

描述

Deploys the application designated by the file_path or enables an already existing
but disabled in the repository deployment designated by the name argument.
If executed w/o arguments, will list all the existing deployments.

论据

file_path - 要部署的应用程序的路径。如果存储库中不存在部署,则需要。路径可以是绝对路径,也可以是相对于当前目录的路径。

--name - 部署的唯一名称。如果指定了文件路径参数,则名称参数是可选的,文件名是默认值。如果未指定文件路径参数,则该命令应该启用已经存在但已禁用的部署,在这种情况下,名称参数是必需的。

--runtime_name - 可选,部署的运行时名称。

--force - 如果指定名称的部署已经存在,默认情况下,部署将被中止并打印相应的消息。开关 --force(或 -f)将强制使用命令参数中指定的部署替换现有部署。

--disabled - 表示必须将部署添加到已禁用的存储库。

--server-groups - 部署命令应该应用到的服务器组名称的逗号分隔列表。在域模式下需要 server-groups 或 all-server-groups。该参数不适用于独立模式。

--all-server-groups - 表示部署应该应用于所有可用的服务器组。在域模式下需要 server-groups 或 all-server-groups。该参数不适用于独立模式。

-l - 如果没有指定任何必需的参数,该命令将打印存储库中的所有现有部署。-l 开关的存在将使现有部署每行打印一个部署,而不是在列中(默认)。

--headers - 以分号分隔的操作标头列表。有关支持的标头列表,请参阅域管理文档或使用 tab-completion。

于 2012-04-20T15:40:22.673 回答
1

我相信进行热部署的唯一方法是使用文件系统部署,例如部署扫描器。您可以在应用程序部署文档中获得一些相关信息。

当您通过控制台或 CLI 部署时,部署会保持压缩并进入内容目录。但是,您对其中的内容无能为力。

对于生产,建议不要使用部署扫描器。部署应用程序的方法有多种,但最简单的方法往往是使用 Web 控制台、CLI 或 maven 插件。也有 Java API,或者您可以编写脚本来执行 CLI 命令。

于 2012-04-18T15:36:37.533 回答