AdminSDKCmds
Use commands in the AdminSDKCmds group in the Jython or Jacl scripting languages to manage software development kit configurations.
Use the commands in the AdminSDKCmds group for the AdminTask object, we can see what software development kits are not used by a node, get or set the default software development kit (SDK) for a node, and get or set an SDK for a server.
The AdminSDKCmds commands include:
Every WebSphere Application Server version and operating system has a default SDK. The name of an SDK installed at a particular computer location must be unique. On workstations, the default SDK is installed in a directory name that starts with ${WAS_HOME}/java for 64-bit operating systems; for example, ${WAS_HOME}/java, or ${WAS_HOME}/java_8.0_64.
(iSeries) For the OS/400 operating system, the software development kits are part of the operating system installation and are not part of the WAS installation. For the OS/390 operating system, symbolic links to the software development kits are in ${WAS_HOME}/java* directories.
The AdminSDKCmds wsadmin commands pertain to SDKs used by nodes or servers. To list and change the default SDK for a profile, use the managesdk command-line utility.
getNodeDefaultSDK
Return the values of the default SDK for a node. The returned values include the Java home and SDK name.
Target object: None
Required parameters:
- -nodeName
- Name of the node whose default SDK values we want returned. (String, required)
Optional parameters: None
Batch mode example usage
- Use Jacl:
$AdminTask getNodeDefaultSDK {-nodeName myNode}- Use Jython string:
AdminTask.getNodeDefaultSDK('[-nodeName myNode]')- Use Jython list:
AdminTask.getNodeDefaultSDK(['-nodeName', 'myNode'])
Interactive mode example usage
- Use Jacl:
$AdminTask getNodeDefaultSDK {-interactive}- Use Jython:
AdminTask.getNodeDefaultSDK('[-interactive]')
getSDKVersion
Run the getSDKVersion command to return the version number of the software development kit in use.
To get the SDK version in use in the cell, do not specify values for -nodeName, -serverName, or -clusterName.
Target object: None
Required parameters: None
Optional parameters:
- -nodeName
- Name of the node whose SDK version we want returned. Do not specify a -clusterName value with a -nodeName value. (String, optional)
- -serverName
- Name of the server whose SDK version we want returned. If we specify a -serverName value, specify a -nodeName value as well and do not specify a -clusterName value. (String, optional)
- -clusterName
- Name of the cluster whose SDK version we want returned. If we specify a -clusterName value, do not specify a -nodeName or -serverName value. (String, optional)
- -highest
- Return the highest SDK version number. By default, the lowest SDK version number is returned. (Boolean, optional)
Batch mode example usage
- Use Jacl:
$AdminTask getSDKVersion {-nodeName myNode -serverName myServer}- Use Jython string:
AdminTask.getSDKVersion('[-nodeName myNode -serverName myServer]')- Use Jython list:
AdminTask.getSDKVersion(['-nodeName', 'myNode', ' -serverName', 'myServer'])
Interactive mode example usage
- Use Jacl:
$AdminTask getSDKVersion {-interactive}- Use Jython:
AdminTask.getSDKVersion('[-interactive]')
getServerSDK
Return the values of the software development kit for a server. If a valid SDK value is set for the server, the returned values include the Java home and SDK name of the default SDK for the server.
If no SDK value is set for the server, the command returns nothing for the Java home value because a variables.xml file does not exist for the server or a JAVA_HOME entry does not exist in the variables.xml file. For the SDK name value, the command returns the node SDK name because the node SDK is the default SDK for a server when a valid SDK has not yet been set using the setServerSDK command.
Target object: None
Required parameters:
- -nodeName
- Name of the node on which the server runs. (String, required)
- -serverName
- Name of the server whose SDK values we want returned. (String, required)
Optional parameters:
- -checkOnly
- Check only the variable. (Boolean, optional)
Batch mode example usage
- Use Jacl:
$AdminTask getServerSDK {-nodeName myNode -serverName myServer}- Use Jython string:
AdminTask.getServerSDK('[-nodeName myNode -serverName myServer]')- Use Jython list:
AdminTask.getServerSDK(['-nodeName', 'myNode', '-serverName', 'myServer'])
Interactive mode example usage
- Use Jacl:
$AdminTask getServerSDK {-interactive}- Use Jython:
AdminTask.getServerSDK('[-interactive]')
getUnusedSDKsOnNode
Run the getUnusedSDKsOnNode command to return a list of the names of software development kits that a node is not using.
Target object: None
Required parameters:
- -nodeName
- Name of the node whose unused SDK names we want returned. (String, required)
Optional parameters: None
Batch mode example usage
- Use Jacl:
$AdminTask getUnusedSDKsOnNode {-nodeName myNode}- Use Jython string:
AdminTask.getUnusedSDKsOnNode('[-nodeName myNode]')- Use Jython list:
AdminTask.getUnusedSDKsOnNode(['-nodeName', 'myNode'])
Interactive mode example usage
- Use Jacl:
$AdminTask getUnusedSDKsOnNode {-interactive}- Use Jython:
AdminTask.getUnusedSDKsOnNode('[-interactive]')
setNodeDefaultSDK
Assign a default software development kit for a node. For the command, specify either the SDK Java home or the SDK name, but not both.
- If we change the node SDK, ensure that the options and properties for the Java command are compatible with the new SDK. See Configuring the JVM.
- If the SDK we are assigning as the default SDK is installed on a managed node, ensure that the node agent on that managed node has been restarted at least once since the SDK was installed. The deployment manager is not aware of a newly installed SDK until after the node agent is restarted.
Target object: None
Required parameters:
- -nodeName
- Name of the node for which to set a default SDK. (String, required)
Optional parameters:
To set a node default SDK, specify the required -nodeName parameter with either -javahome or -sdkName. Both the -javahome and -sdkName parameters are optional but specify either one of the parameters.
To clear all SDK settings for all servers on a node, specify the required -nodeName parameter with either -javahome or -sdkName and with the optional -clearServerSDKs parameter set to true.
- -javahome
- Java home of the SDK that we want the node to use. If we specify a -javahome value, do not specify a value for the -sdkName parameter. (String, optional)
- -sdkName
- Name of the SDK that we want the node to use. If we specify a value for this -sdkName parameter, do not specify a value for the -javahome parameter. (String, optional)
- -clearServerSDKs
- To clear any SDK value settings for all servers on a node. (Boolean, optional)
To clear SDK value settings for all servers on a node, specify true for -clearServerSDKs. After the server SDK value settings are cleared, servers use the SDK value setting for the node.
Batch mode example usage
- Use Jacl:
$AdminTask setNodeDefaultSDK {-nodeName myNode -sdkName 8.0_64}$AdminTask setNodeDefaultSDK {-nodeName myNode -sdkName 8.0_64 -clearServerSDKs true}- Use Jython string:
AdminTask.setNodeDefaultSDK('[-nodeName myNode -sdkName 8.0_64]')AdminTask.setNodeDefaultSDK('[-nodeName myNode -sdkName 8.0_64 -clearServerSDKs true]')- Use Jython list:
AdminTask.setNodeDefaultSDK(['-nodeName', 'myNode', '-javahome', '${JAVA_LOCATION_8.0_64}'])AdminTask.setNodeDefaultSDK(['-nodeName', 'myNode', '-sdkName', '8.0_64', '-clearServerSDKs', 'true'])
Interactive mode example usage
- Use Jacl:
$AdminTask setNodeDefaultSDK {-interactive}- Use Jython:
AdminTask.setNodeDefaultSDK('[-interactive]')
setServerSDK
Assign a software development kit for a server. The command creates a variables.xml file for the server that designates the SDK. For the command, specify either the cluster or both the node and server. Optionally specify either the SDK Java home or the SDK name, but not both.
To clear the server SDK assignment, do not specify values for SDK Java home or the SDK name. For example, if server1 is assigned SDK 8.0_64, run setServerSDK without the -javahome and -sdkName parameters to have no SDK assigned for server1.
If we change the server SDK, ensure that the options and properties for the Java command are compatible with the new SDK. See Configuring the JVM. Target object: None
Required parameters: None
Optional parameters:
- -nodeName
- Name of the node on which the server runs. If we specify a -nodeName value, specify a -serverName value as well and do not specify a -clusterName value. (String, optional)
- -serverName
- Name of the server for which to set an SDK. If we specify a -serverName value, specify a -nodeName value as well and do not specify a -clusterName value. (String, optional)
- -clusterName
- Name of the cluster for which to set an SDK. When the parameter is specified, the cluster member template for the cluster is also set to use the new SDK name or SDK Java home. Any subsequent cluster member created in the cluster uses the new SDK name or Java home. If we specify a -clusterName value, do not specify a -nodeName or -serverName value. (String, optional)
- -javahome
- Java home of the SDK that we want the server to use. If we specify a -javahome value, do not specify a value for the -sdkName parameter. (String, optional)
- -sdkName
- Name of the SDK that we want the server to use. If we specify a value for this -sdkName parameter, do not specify a value for the -javahome parameter. (String, optional)
Batch mode example usage
- Use Jacl:
$AdminTask setServerSDK {-nodeName myNode -serverName myServer -sdkName 8.0_64}- Use Jython string:
AdminTask.setServerSDK('[-nodeName myNode -serverName myServer -sdkName 8.0_64]')- Use Jython list:
AdminTask.setServerSDK(['-nodeName', 'myNode', '-serverName', 'myServer', '-javahome', '${JAVA_LOCATION_8.0_64}'])
Interactive mode example usage
- Use Jacl:
$AdminTask setServerSDK {-interactive}- Use Jython:
AdminTask.setServerSDK('[-interactive]')
wsadmin AdminTask Configure the JVM ManagedObjectMetadata Commands for the AdminTask object managesdk command