我有一个要求,我需要使用命令行在weblogic中取消部署war文件,下面的代码为我做了:
java weblogic.Deployer -adminurl t3://localhost:8001 -user weblogic -password password123 -name <name> -undeploy
但每次部署后文件名都会改变,即e(文件1.0.0和文件1.1.1)。
我需要一个命令,以便它取消部署该服务器中存在的所有文件。
任何机构都可以让我知道如何一次性取消部署所有文件吗?
提前致谢,
维沙尔
答案 0 :(得分: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 :(得分: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 :(得分:1)
<name>
应该是模块名称而不是文件(war或ear)名称。使用不带-undeploy
和-targets
标志的-submoduletargets
命令会从所有WebLogic Server实例中完全删除应用程序或独立模块,并取消所有JMS子模块资源。
顺便说一句,添加-graceful
选项将允许当前的HTTP客户端在取消部署之前完成其工作。
注意:取消部署部署单元不会删除用于部署的原始源文件。它仅从域中删除部署的配置,以及WebLogic Server在部署期间创建的任何部署文件(例如,使用阶段部署模式复制的文件和上载到管理服务器的文件)。