AdminTask 对象的 AdminSDKCmds 命令组
您可以用 AdminSDKCmds 组中使用 Jython 或 Jacl 脚本编制语言的命令和参数,来管理软件开发包配置。
通过使用 AdminTask 对象 AdminSDKCmds 组中的命令和参数,您可以查看节点未使用哪些软件开发包、获取或设置节点的缺省软件开发包 (SDK) 以及获取或设置服务器的 SDK。
每个 WebSphere® Application Server 版本和操作系统都具有一个缺省 SDK。特定计算机位置处安装的 SDK 的名称必须唯一。在工作站上,对于 64 位操作系统,缺省 SDK 安装在名称以 ${WAS_HOME}/java 开头的目录中;例如,${WAS_HOME}/java 或 ${WAS_HOME}/java_8.0_64。
对于 OS/400® 操作系统,软件开发包是操作系统安装的一部分,而不是
WebSphere Application Server 安装的一部分。对于 OS/390® 操作系统,指向软件开发包的符号链接位于 ${WAS_HOME}/java* 目录中。
AdminSDKCmds wsadmin 命令与节点或服务器使用的 SDK 有关。要列示和更改概要文件的缺省 SDK,请使用 managesdk 命令行实用程序。
getNodeDefaultSDK
使用 getNodeDefaultSDK 命令来返回节点的缺省软件开发包 (SDK) 的值。返回值包含 Java™ Home 接口和 SDK 名称。
目标对象
无
必需参数
- -nodeName
- 指定节点的名称,您希望返回其缺省 SDK 值。(字符串,必需)
可选参数
无
批处理方式示例用法
- 使用 Jacl:
$AdminTask getNodeDefaultSDK {-nodeName myNode}
- 使用 Jython 字符串:
AdminTask.getNodeDefaultSDK('[-nodeName myNode]')
- 使用 Jython 列表:
AdminTask.getNodeDefaultSDK(['-nodeName', 'myNode'])
交互方式示例用法
- 使用 Jacl:
$AdminTask getNodeDefaultSDK {-interactive}
- 使用 Jython:
AdminTask.getNodeDefaultSDK('[-interactive]')
getSDKVersion
运行 getSDKVersion 命令来返回使用中的软件开发包的版本号。
要获取单元内使用中的 SDK 版本,请不要为 -nodeName、-serverName 或 -clusterName 指定值。
目标对象
无
必需参数
无
可选参数
- -nodeName
- 指定节点的名称,您希望返回其 SDK 版本。不要同时使用 -clusterName 值和 -nodeName 值。(字符串,可选)
- -serverName
- 指定服务器的名称,您希望返回其 SDK 版本。如果您指定 -serverName 值,还请指定 -nodeName 值,但不要指定 -clusterName 值。(字符串,可选)
- -clusterName
- 指定集群的名称,您希望返回其 SDK 版本。如果您指定 -clusterName 值,请不要指定 -nodeName 或 -serverName 值。(字符串,可选)
- -highest
- 指定是否返回最高的版本号。缺省情况下,将返回最低的 SDK 版本号。(布尔值,可选)
批处理方式示例用法
- 使用 Jacl:
$AdminTask getSDKVersion {-nodeName myNode -serverName myServer}
- 使用 Jython 字符串:
AdminTask.getSDKVersion('[-nodeName myNode -serverName myServer]')
- 使用 Jython 列表:
AdminTask.getSDKVersion(['-nodeName', 'myNode', ' -serverName', 'myServer'])
交互方式示例用法
- 使用 Jacl:
$AdminTask getSDKVersion {-interactive}
- 使用 Jython:
AdminTask.getSDKVersion('[-interactive]')
getServerSDK
使用 getServerSDK 命令来返回服务器的软件开发包的值。如果为服务器设置了有效 SDK 值,那么返回值包含服务器的缺省 SDK 的 Java Home 接口和 SDK 名称。
如果没有为服务器设置 SDK 值,那么该命令不会返回 Java Home 值的任何内容,这是因为服务器没有 variables.xml 文件,或者 variables.xml 文件中没有 JAVA_HOME 条目。对于 SDK 名称值,命令会返回节点 SDK 名称,因为尚未使用 setServerSDK 命令设置有效的 SDK 时,节点 SDK 是服务器的缺省 SDK。
目标对象
无
必需参数
- -nodeName
- 指定运行此服务器的节点的名称。(字符串,必需)
- -serverName
- 指定服务器的名称,您希望返回其 SDK 值。(字符串,必需)
可选参数
- -checkOnly
- 指定是否只检查变量。(布尔值,可选)
批处理方式示例用法
- 使用 Jacl:
$AdminTask getServerSDK {-nodeName myNode -serverName myServer}
- 使用 Jython 字符串:
AdminTask.getServerSDK('[-nodeName myNode -serverName myServer]')
- 使用 Jython 列表:
AdminTask.getServerSDK(['-nodeName', 'myNode', '–serverName', 'myServer'])
交互方式示例用法
- 使用 Jacl:
$AdminTask getServerSDK {-interactive}
- 使用 Jython:
AdminTask.getServerSDK('[-interactive]')
getUnusedSDKsOnNode
运行 getUnusedSDKsOnNode 命令以返回节点未使用的软件开发包名称的列表。
目标对象
无
必需参数
- -nodeName
- 指定节点的名称,您希望返回其未使用的 SDK 名称。(字符串,必需)
可选参数
无
批处理方式示例用法
- 使用 Jacl:
$AdminTask getUnusedSDKsOnNode {-nodeName myNode}
- 使用 Jython 字符串:
AdminTask.getUnusedSDKsOnNode('[-nodeName myNode]')
- 使用 Jython 列表:
AdminTask.getUnusedSDKsOnNode(['-nodeName', 'myNode'])
交互方式示例用法
- 使用 Jacl:
$AdminTask getUnusedSDKsOnNode {-interactive}
- 使用 Jython:
AdminTask.getUnusedSDKsOnNode('[-interactive]')
setNodeDefaultSDK
使用 setNodeDefaultSDK 命令来指定节点的缺省软件开发包。对于该命令,请指定 SDK Java Home 接口或 SDK 名称,但不要同时指定这两者。

- 如果您更改节点 SDK,请确保 Java 命令的选项和属性与新 SDK 兼容。请参阅“配置 JVM”。
- 如果您指定为缺省 SDK 的 SDK 安装在受管节点上,请确保自安装 SDK 以来已至少重新启动该受管节点上的 Node Agent 一次。 在 Node Agent 重新启动之后,Deployment Manager 才会识别新安装的 SDK。
目标对象
无
必需参数
- -nodeName
- 指定节点的名称,您希望为该节点设置缺省 SDK。(字符串,必需)
可选参数
要设置节点集合 SDK,请指定必需的 -nodeName 参数以及 -javahome 或 -sdkName。-javahome 和 -sdkName 参数都是可选参数,但您必须指定其中一个参数。
- -javahome
- 指定您希望节点使用的 SDK 的 Java Home 接口。如果您指定 -javahome 值,请不要为 -sdkName 参数指定值。(字符串,可选)
- -sdkName
- 指定您希望节点使用的 SDK 的名称。如果您为此 -sdkName 参数指定值,请不要为 -javahome 参数指定值。(字符串,可选)
- -clearServerSDKs
- 指定此项以清除节点上所有服务器的任何 SDK 值设置。(布尔值,可选)
要清除节点上所有服务器的 SDK 值设置,请对 -clearServerSDKs 指定 true。清除服务器 SDK 值设置后,服务器会使用节点的 SDK 值设置。
批处理方式示例用法
- 使用 Jacl:
$AdminTask setNodeDefaultSDK {-nodeName myNode -sdkName 8.0_64}
$AdminTask setNodeDefaultSDK {-nodeName myNode -sdkName 8.0_64 -clearServerSDKs true}
- 使用 Jython 字符串:
AdminTask.setNodeDefaultSDK('[-nodeName myNode -sdkName 8.0_64]')
AdminTask.setNodeDefaultSDK('[-nodeName myNode -sdkName 8.0_64 -clearServerSDKs true]')
- 使用 Jython 列表:
AdminTask.setNodeDefaultSDK(['-nodeName', 'myNode', '-javahome', '${JAVA_LOCATION_8.0_64}'])
AdminTask.setNodeDefaultSDK(['-nodeName', 'myNode', '-sdkName', '8.0_64', '-clearServerSDKs', 'true'])
交互方式示例用法
- 使用 Jacl:
$AdminTask setNodeDefaultSDK {-interactive}
- 使用 Jython:
AdminTask.setNodeDefaultSDK('[-interactive]')
setServerSDK
使用 setServerSDK 命令来指定服务器的软件开发包。该命令将为服务器创建一个用于指定 SDK 的 variables.xml 文件。对于该命令,请指定集群或者同时指定节点和服务器。(可选)请指定 SDK Java Home 接口或 SDK 名称,但不要同时指定这两者。
要取消指定服务器 SDK,请不要为 SDK Java Home 接口或 SDK 名称指定值。例如,如果为 server1 指定 SDK 8.0_64,请在不指定 -javahome 和 -sdkName 参数的情况下运行 setServerSDK,以便不为 server1 指定 SDK。

目标对象
无
必需参数
无
可选参数
- -nodeName
- 指定运行此服务器的节点的名称。如果您指定 -nodeName 值,还请指定 -serverName 值,但不要指定 -clusterName 值。(字符串,可选)
- -serverName
- 指定希望为其设置 SDK 的服务器的名称。如果您指定 -serverName 值,还请指定 -nodeName 值,但不要指定 -clusterName 值。(字符串,可选)
- -clusterName
- 指定希望为其设置 SDK 的集群的名称。当指定该参数时,还会将集群的集群成员模板设置为使用新 SDK 名称或 SDK Java Home。 在该集群中创建的任何后续集群成员都将使用新 SDK 名称或 Java Home。如果您指定 -clusterName 值,请不要指定 -nodeName 或 -serverName 值。(字符串,可选)
- -javahome
- 指定您希望服务器使用的 SDK 的 Java Home 接口。如果您指定 -javahome 值,请不要为 -sdkName 参数指定值。(字符串,可选)
- -sdkName
- 指定您希望服务器使用的 SDK 的名称。如果您为此 -sdkName 参数指定值,请不要为 -javahome 参数指定值。(字符串,可选)
批处理方式示例用法
- 使用 Jacl:
$AdminTask setServerSDK {-nodeName myNode -serverName myServer -sdkName 8.0_64}
- 使用 Jython 字符串:
AdminTask.setServerSDK('[-nodeName myNode -serverName myServer -sdkName 8.0_64]')
- 使用 Jython 列表:
AdminTask.setServerSDK(['-nodeName', 'myNode', '–serverName', 'myServer', '-javahome', '${JAVA_LOCATION_8.0_64}'])
交互方式示例用法
- 使用 Jacl:
$AdminTask setServerSDK {-interactive}
- 使用 Jython:
AdminTask.setServerSDK('[-interactive]')