我正尝试在jacl上的wsadmin中使用安装脚本中的变量。首先,我指定
set nodeName [$AdminControl getNode]
set cellName [$AdminControl getCell]然后,在我的脚本中,我想使用这两个变量,但由于某种原因,我想使用它们
$AdminApp install C:/ssc.war { -nopreCompileJSPs -installed.ear.destination $(APP_INSTALL_ROOT)/$(CELL) -distributeApp -nouseMetaDataFromBinary -nodeployejb -appname ssc_war -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall warn -noprocessEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -asyncRequestDispatchType DISABLED -nouseAutoLink -noenableClientModule -clientMode isolated -novalidateSchema -contextroot /ssc -MapModulesToServers {{"F" ssc.war,WEB-INF/web.xml WebSphere:cell=$**cellName**,node=$**nodeName**,server=server1}} -MapWebModToVH {{"Fortify Portal" ssc.war,WEB-INF/web.xml default_host}} -CtxRootForWebMod {{"Fortify Portal" ssc.war,WEB-INF/web.xml /ssc}}}可能是语法有问题
发布于 2015-11-06 11:34:24
在您提供的初始脚本中,我没有看到任何使用变量nodeName或cellName的尝试。另外,你真的在乎提供所有这些论据吗?其中大多数都是默认值。此外,您没有在.war路径周围加引号“,这是必需的。
要在wsadmin脚本中使用变量,请在变量名前面放置一个$符号。例如:
set myvar "test"
puts $myvar因此,要安装一个应用程序,它应该像这样简单:
set cellName [$AdminControl getCell]
set nodeName [$AdminControl getNode]
set serverName [$AdminControl getServer]
$AdminApp install "C:/ssc.war" {
-node $nodeName
-cell $cellName
-server $serverName
}我建议您看看IBM的WebSphere脚本文档,它描述了您正在尝试做的事情:Installing enterprise applications using wsadmin scripting
https://stackoverflow.com/questions/33540505
复制相似问题