managesdk 命令

managesdk 命令提供产品所使用的软件开发套件的名称。

使用 managesdk 命令来:
  • 列示适用于产品安装的软件开发包 (SDK) 名称。
  • 列示指定概要文件根据配置所要使用的 SDK 名称。
  • 对于产品安装中的每个概要文件,列示该概要文件根据配置所要使用的 SDK 名称。
  • 使概要文件能够使用指定的 SDK 名称。
  • 使安装中的所有概要文件都能够使用指定的 SDK 名称。
  • 获取用来配置新概要文件的 SDK 名称。
  • 更改概要文件使用的缺省 SDK 名称。
  • 获取从产品 bin 目录中调用的脚本所使用的 SDK 名称。
  • 更改产品 bin 目录中的脚本在缺省情况下使用的 SDK 名称。如果未指定现有概要文件名称,并且缺省概要文件名称不适用,那么将使用此 SDK 名称。

命令文件位于 app_server_root/bin 目录和 app_client_root/bin 目录中。

[IBM i]注意: managesdk 命令提供用于代替 enableJvm 命令的功能。不推荐使用 enableJvm 命令。请使用 managesdk 命令来代替 enableJvm 命令。
注意: 如果在联合单元中使用 managesdk 命令,并在节点上启用 SDK,那么此命令找不到 SDK,除非重新启动 Node Agent。

[z/OS]如果将新 SDK 安装到 WebSphere® Application Server for z/OS® 的现有副本,那么必须先启动每个应用程序服务器节点或管理节点,然后您才能在该节点上使用 SDK。重新启动节点时,postinstaller 将创建所需的从配置文件系统指向包含新 SDK 的产品文件系统的符号链接。

注: 在安装之后,WebSphere Application Server 将查找已安装的 Java™ SDK,并选择已安装且用作新创建的概要文件的命令缺省 SDK 的最高级别 Java SDK。进行此初始设置之后,可使用 managesdk 命令来切换到另一个 SDK(如果可用)。

语法

请根据以下命令语法使用 managesdk 命令:

managesdk -task [-parameter] [value]

命令行工具将验证所请求的任务是否包含必需的参数和值。参数不区分大小写。但是,值区分大小写。您必须以正确的大小写输入值,这是因为,命令行工具不会验证参数值的大小写。如果输入的参数值不正确,那么可能导致错误的结果。

参数

下列 -task 选项可用于 managesdk 命令:

-help
显示有关每个 managesdk 任务的参数或值的详细信息。以下示例将 managesdk 命令与 help 参数配合使用:
[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -help
[IBM i]
app_server_root/bin/managesdk -help
[Windows]
app_server_root\bin\managesdk.bat -help

help 选项的输出描述了必需参数和可选参数。

-listAvailable [-verbose]
显示所有适用于产品安装的 SDK 名称的列表。如果还指定了 -verbose 选项,那么还将显示每个 SDK 名称的属性列表。以下示例将 -listAvailable -verbose 参数与 managesdk 命令配合使用:
[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -listAvailable -verbose
[IBM i]
app_server_root/bin/managesdk -listAvailable -verbose
[Windows]
app_server_root\bin\managesdk.bat -listAvailable -verbose

输出是产品安装可以使用的所有 SDK 名称的列表以及每个 SDK 名称的相关属性列表。

-listEnabledProfile [-profileName profile_name] [-verbose]
显示指定的概要文件及其节点和服务器根据配置所要使用的所有 SDK 名称的列表。如果还指定了 -verbose 选项,那么还将显示每个 SDK 名称的属性列表。以下示例将 -listEnabledProfile -profileName-verbose 参数与 managesdk 命令配合使用:
[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -listEnabledProfile -profileName AppSrv02 -verbose
[IBM i]
app_server_root/bin/managesdk -listEnabledProfile -profileName AppSrv02 -verbose
[Windows]
app_server_root\bin\managesdk.bat -listEnabledProfile -profileName AppSrv02 -verbose

输出是指定的概要文件可以使用的所有 SDK 名称的列表以及每个 SDK 名称的相关属性列表。

-listEnabledProfileAll [-verbose]
显示安装中的所有概要文件以及每个概要文件及其节点和服务器根据配置所要使用的 SDK 名称的列表。如果还指定了 -verbose 选项,那么还将显示每个 SDK 名称的属性列表。以下示例将 -listEnabledProfileAll-verbose 参数与 managesdk 命令配合使用:
[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -listEnabledProfileAll -verbose
[IBM i]
app_server_root/bin/managesdk -listEnabledProfileAll -verbose
[Windows]
app_server_root\bin\managesdk.bat -listEnabledProfileAll -verbose

输出是产品安装中所有概要文件和每个概要文件可以使用的所有 SDK 名称的列表,以及每个 SDK 名称的相关属性列表。

-enableProfile [-profileName profile_name] [-sdkname sdkName] [-enableServers] [-user user_name] [-password password_value]
使概要文件能够使用指定的 SDK 名称。-profileName 参数指定概要文件,而 -sdkname 参数指定 SDK 名称。此命令使概要文件以及概要文件的节点级缺省 SDK 能够使用指定的 SDK 名称。除非使用了 -enableServers 选项,否则此命令不会更改服务器级 SDK 设置。如果使用了 -enableServers 选项,那么将清除所有服务器级 SDK 设置,从而允许所有服务器使用节点级缺省 SDK。
以下条件适用于已运行 managesdk 命令的情况:
  • 如果概要文件是 Deployment Manager 的联合节点,那么当 managesdk 命令尝试更新此概要文件时,Deployment Manager 必须正在运行。
  • 如果概要文件是独立应用程序服务器、独立安全代理服务器、作业管理器、管理代理程序或 Deployment Manager,那么当 managesdk 命令尝试更新该概要文件时,概要文件服务器(节点)不得处于运行状态。请先停止该服务器,然后再运行 managesdk 命令。
  • 对某个节点启用 SDK 时,从该节点所属的产品安装的 /bin 目录或包含您要更新的节点的概要文件 /bin 目录运行 managesdk 命令。
  • 根据以下首选顺序使用受支持的连接器协议时,与 Deployment Manager 的连接必须存在:
    1. SOAP
    2. 进程间通信 (IPC)
    3. 远程方法调用 (RMI)
    如果启用了 SOAP 协议,那么 managesdk 命令将使用 SOAP 协议。如果未启用 SOAP 协议,但启用了 IPC 协议,那么该命令将使用 IPC 协议。如果 SOAP 协议和 IPC 协议都未启用,那么该命令将使用 RMI 协议。
  • 对于每个包含已启用安全性的单元中的联合节点或 Deployment Manager 节点的概要文件,您必须为 managesdk 命令提供管理用户名和密码。如果未指定 -user-password 参数,那么 managesdk 命令可能会失败或停止处理。在有关通过脚本编制配置安全性的主题中,提供了特定于连接器协议的指示信息,说明如何保存用户名值和密码值。
  • 对 Deployment Manager 启用 SDK 时,将仅启用 Deployment Manager 服务器。不会启用 Deployment Manager 的任何受管节点来使用特定 SDK。

以下示例将 -enableProfile-profileName-sdkname-enableServersmanagesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris]
app_server_root/bin/managesdk.sh -enableProfile -profileName AppSrv02 -sdkname 8.0_64 -enableServers
[IBM i]
app_server_root/bin/managesdk -enableProfile -profileName AppSrv02 -sdkname 8.0_64 -enableServers
[Windows]
app_server_root\bin\managesdk.bat -enableProfile -profileName AppSrv02 -sdkname 8.0_64 -enableServers
[z/OS]
app_server_root/bin/managesdk.sh -enableProfile -profileName AppSrv02 -sdkname 8.0_64 -enableServers

输出是一条消息,该消息指示更新指定概要文件成功从而使该概要文件现在能够使用指定的 SDK,或者遇到了问题从而导致无法成功地更新该概要文件。

-enableProfileAll [-sdkname sdkName] [-enableServers] [-user user_name] [-password password_value]
使安装中的所有概要文件都能使用指定的 SDK 名称。-sdkname 参数指定 SDK 名称。此命令使所有概要文件以及每个概要文件的节点级缺省 SDK 能够使用指定的 SDK 名称。除非使用了 -enableServers 选项,否则此命令不会更改服务器级 SDK 设置。如果使用了 -enableServers 选项,那么将清除所有服务器级 SDK 设置,从而允许所有服务器使用节点级缺省 SDK。
以下条件适用于已运行 managesdk 命令的情况:
  • 如果概要文件是 Deployment Manager 的联合节点,那么当 managesdk 命令尝试更新此概要文件时,Deployment Manager 必须正在运行。
  • 如果概要文件是独立应用程序服务器、独立安全代理服务器、作业管理器、管理代理程序或 Deployment Manager,那么当 managesdk 命令尝试更新该概要文件时,概要文件服务器(节点)不得处于运行状态。请先停止该服务器,然后再运行 managesdk 命令。
  • 对某个节点启用 SDK 时,从该节点所属的产品安装的 /bin 目录或包含您要更新的节点的概要文件 /bin 目录运行 managesdk 命令。
  • 根据以下首选顺序使用受支持的连接器协议时,与 Deployment Manager 的连接必须存在:
    1. SOAP
    2. 进程间通信 (IPC)
    3. 远程方法调用 (RMI)
    如果启用了 SOAP 协议,那么 managesdk 命令将使用 SOAP 协议。如果未启用 SOAP 协议,但启用了 IPC 协议,那么该命令将使用 IPC 协议。如果 SOAP 协议和 IPC 协议都未启用,那么该命令将使用 RMI 协议。
  • 对于每个包含已启用安全性的单元中的联合节点或 Deployment Manager 节点的概要文件,您必须为 managesdk 命令提供管理用户名和密码。如果未指定 -user 和 -password 参数,那么 managesdk 命令可能会失败或停止处理。在有关通过脚本编制配置安全性的主题中,提供了特定于连接器协议的指示信息,说明如何保存用户名值和密码值。
    避免故障 避免故障: 对于和单元(包含任何已启用安全性的联合节点或 Deployment Manager)的 Deployment Manager 的 SOAP、IPC 和 RMI 连接,除非已禁用自动提示,否则请不要使用 -enableProfileAll 选项。自动提示将导致 managesdk 命令失败或停止处理。gotcha
  • 对 Deployment Manager 启用 SDK 时,将仅启用 Deployment Manager 服务器。不会启用 Deployment Manager 的任何受管节点来使用特定 SDK。

以下示例将 -enableProfileAll-sdkname-enableServersmanagesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris]
app_server_root/bin/managesdk.sh -enableProfileAll -sdkname 8.0_64 -enableServers
[IBM i]
app_server_root/bin/managesdk -enableProfileAll -sdkname 8.0_64 -enableServers
[Windows]
app_server_root\bin\managesdk.bat -enableProfileAll -sdkname 8.0_64 -enableServers
[z/OS]
app_server_root/bin/managesdk.sh -enableProfileAll -sdkname 8.0_64 -enableServers

输出是每个概要文件的一条相应消息,该消息指示更新该概要文件成功从而使该概要文件现在能够使用指定的 SDK,或者遇到了问题从而导致无法成功地更新该概要文件。

-getNewProfileDefault [-verbose]
显示针对使用 manageprofiles 命令创建的所有概要文件配置的 SDK 名称。如果还指定了 -verbose 选项,那么还将显示单个 SDK 名称的属性信息。

以下示例将 -getNewProfileDefault -verbose 参数与 managesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -getNewProfileDefault -verbose
[IBM i]
app_server_root/bin/managesdk -getNewProfileDefault -verbose
[Windows]
app_server_root\bin\managesdk.bat -getNewProfileDefault -verbose

此命令运行完成后,将显示新的概要文件缺省 SDK 名称。

-setNewProfileDefault [-sdkname sdkName]
更改针对使用 manageprofiles 命令创建的所有概要文件配置的 SDK 名称。-sdkname 参数指定要使用的缺省 SDK 名称。sdkName 值必须是对产品安装启用的 SDK 名称。

以下示例将 -setNewProfileDefault -sdkname 参数与 managesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris]
app_server_root/bin/managesdk.sh -setNewProfileDefault -sdkname 8.0_64
[IBM i]
app_server_root/bin/managesdk -setNewProfileDefault -sdkname 8.0_64
[Windows]
app_server_root\bin\managesdk.bat -setNewProfileDefault -sdkname 8.0_64
[z/OS]
app_server_root/bin/managesdk.sh -setNewProfileDefault -sdkname 8.0_64

此命令运行完成后,将显示新的概要文件缺省 SDK 名称。

-getCommandDefault [-verbose]
显示命令未指定概要文件并且命令没有缺省概要文件时 app_server_root/binapp_client_root/binplugins_root/bin 目录中的脚本命令所能够使用的 SDK 名称。如果还指定了 -verbose 选项,那么还将显示单个 SDK 名称的属性信息。

以下示例将 -getCommandDefault -verbose 参数与 managesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris][z/OS]
app_server_root/bin/managesdk.sh -getCommandDefault -verbose
[IBM i]
app_server_root/bin/managesdk -getCommandDefault -verbose
[Windows]
app_server_root\bin\managesdk.bat -getCommandDefault -verbose
-setCommandDefault [-sdkname sdkName]
更改命令未指定概要文件并且命令没有缺省概要文件时 app_server_root/binapp_client_root/binplugins_root/bin 目录中的脚本命令所能够使用的 SDK 名称。-sdkname 参数指定用于命令的 SDK 名称。sdkName 值必须是对产品安装启用的 SDK 名称。

以下示例将 -getCommandDefault -sdkname 参数与 managesdk 命令配合使用:

[AIX][HP-UX][Linux][Solaris]
app_server_root/bin/managesdk.sh -setCommandDefault -sdkname 8.0_64
[IBM i]
app_server_root/bin/managesdk -setCommandDefault -sdkname 8.0_64
[Windows]
app_server_root\bin\managesdk.bat -setCommandDefault -sdkname 8.0_64
[z/OS]
app_server_root/bin/managesdk.sh -setCommandDefault -sdkname 8.0_64

以下特殊参数选项可以与 managesdk 命令的任务参数配合使用:

-debug
将此选项与任意 -task 参数配合使用可以在命令输出中提供额外的调试信息。
-quiet
将此选项与任意 -task 参数配合使用可以消除命令输出中的大部分消息。
-sdkname
将此选项与 -set task 参数配合使用可以指定对产品安装启用的 SDK 名称;例如:
  • [AIX][HP-UX][IBM i][Linux][Solaris][Windows]-sdkname 8.0_64
-verbose
将此选项与任意 -list-get 任务参数配合使用可以提供额外的信息,例如命令输出中的 SDK 属性。
[AIX Solaris HP-UX Linux Windows][IBM i]

使用方案

下列示例演示运行 managesdk 命令时的正确语法:

managesdk -listAvailable -verbose
managesdk -listEnabledProfile -profileName AppSrv02 -verbose
managesdk -listEnabledProfileAll -verbose
managesdk -enableProfile -profileName AppSrv02 -sdkname 8.0_64 -enableServers
managesdk -enableProfileAll -sdkname 8.0_64 -enableServers
managesdk -getNewProfileDefault -verbose
managesdk -setNewProfileDefault -sdkname 8.0_64
managesdk -getCommandDefault -verbose
managesdk -setCommandDefault -sdkname 8.0_64

以下示例演示列示可用 SDK、将缺省 SDK 更改为 V8.0 SDK 以及使概要文件(如果已存在)能够使用 V8.0 SDK 时使用的正确命令序列。

  1. (可选)查看产品安装的可用 SDK 名称列表:
    managesdk -listAvailable
  2. 将命令缺省值设置为 V8.0 SDK:
    managesdk -setCommandDefault -sdkname 8.0_64
  3. 将新概要文件缺省值设置为 V8.0 SDK:
    managesdk -setNewProfileDefault -sdkname 8.0_64
  4. 如果这些概要文件已存在,那么使其能够使用 V8.0 SDK:
    managesdk -enableProfileAll -sdkname 8.0_64 -enableServers

    要更改 Network Deployment 安装中的联合概要文件,Deployment Manager 必须处于运行状态。managesdk 命令更新主配置存储库。此命令运行完成后,必须先执行同步操作,这样新的 SDK 才能用于联合概要文件。


指示主题类型的图标 参考主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rxml_managesdk
文件名:rxml_managesdk.html