0

我正在编写一个 WLST 脚本来使用 WebLogic 11g 部署应用程序。问题是当我部署一个应用程序(版本A),取消部署它,然后部署版本B,它部署版本A

如果我尝试通过删除tmp/_WL_user/appname/文件夹来解决这个问题,那么它将不会部署A,或者B因为它在应用程序的 tmp 文件夹中查找(并且因为我将其清除而失败)。我正在使用 nostage 选项,所以我不明白为什么它会缓存任何东西。

您能提供的任何帮助将不胜感激。谢谢!

4

1 回答 1

0

可能版本 A 的取消部署不成功,版本 B 从未部署。

不确定您在 WLST 脚本中有什么,您可以尝试以下操作:

# let's say the appName is testApp
# can move all of these properties to a props file
appName='testApp'
appPath='/scratch/user/testApp.war'
appTarget='AdminServer'
username='weblogic'
password='weblogic1'
adminURL='t3://hostname:adminport'

# start deploy/undeploy code
connect (username, password, adminURL)
for app in cmo.getAppDeployments():
    currAppName = app.getName()
    if currAppName == appName :
        print('Application' + appName + ' already exists, undeploying...')
        undeploy(appName)
        # sleep is just to make sure that we don't attempt deploy immediately i.e before server is finished with undeploying
        # more like a safe side one, may not be required also
        java.lang.Thread.sleep(60000)
print('Now deploying ' + appName)
deploy(appName, appPath, appTarget)
disconnect()
于 2012-09-13T07:12:30.580 回答