weblogic取消部署应用程序命令行

问题描述 投票:1回答:3

我有一个要求,我需要使用命令行在weblogic中取消部署war文件,以下代码为我完成了此工作:

 java weblogic.Deployer -adminurl t3://localhost:8001 -user weblogic -password password123  -name <name> -undeploy 

但是文件名在每次部署后都会更改,即(文件1.0.0和文件1.1.1)。

我需要这样一种命令,以便它取消部署该服务器中存在的所有文件。

有人可以让我知道如何一次取消部署所有文件吗?

谢谢,

Vishal

javascript batch-file weblogic wlst
3个回答
2
投票

我已经找到了如何取消部署所有应用程序的方法:

List Apps:


import sys
connect('weblogic','weblogic10','http://autowfm-vmh:7259')
cd("AppDeployments")
app = ls(returnMap='true')
domainRuntime()
cd("AppRuntimeStateRuntime/AppRuntimeStateRuntime")

i=1
f = open('filename.txt','w')
for appName in app:

print >>f, appName

i=i+1
f.close()
exit()

Undeploy :

import os
connect('weblogic','weblogic','http://localhost:7001')
target='AdminServer' 
f = open(r'D:\filename.txt','r') 
print f 

for i in range(10): 
line=f.readline() 
line1=line[:-1] 
appName='./'+line1 
print '*****************'+appName 

undeploy(appName=line1)
exit()

2
投票

如果您要编写更通用的答案,可以通过以下方式列出所有应用程序:

java -cp /opt/ora/mw/wlserver_10.3/server/lib/weblogic.jar weblogic.Deployer 
-adminurl t3://host:port  -username weblogic -password  weblogic1 -listapps

然后解析该输出以开始删除应用程序。


1
投票

<name>应该是模块名称,而不是文件名(war或ear)。使用不带-undeploy-targets标志的-submoduletargets命令可以从所有WebLogic Server实例中完全删除该应用程序或独立模块,并取消所有JMS子模块资源的目标。顺便说一句,添加-graceful选项将允许当前的HTTP客户端在取消部署之前完成其工作。注意:取消部署单元的部署不会删除用于部署的原始源文件。它仅从域中删除部署的配置,以及WebLogic Server在部署过程中创建的所有部署文件(例如,以阶段部署模式复制的文件以及上传到Administration Server的文件)。

© www.soinside.com 2019 - 2024. All rights reserved.