2009-07-31 95 views
0

我必須通過ant在weblogic中部署我的應用程序。 什麼我做的是:如何使用ant任務取消部署weblogic應用程序?

<target name="deployOnServer1" > 
     <echo>*********** Start deploying war file on SERVER1 *********** </echo> 
     <wldeploy action="redeploy" 
      source="${dist.dir}/${ant.project.name}.war" 
      name="${wls.appname}"  
      user="${wls1.user}" 
      password="${wls1.password}" 
      adminurl="${wls1.adminurl}"  
      targets="${wls1.targets}" 
      verbose="true" 
      debug="true" 
      upload="true" 
      remote="true" 
     /> 
</target> 

此部署我在WebLogic應用程序,只有在沒有任何其他應用程序使用相同的應用程序上下文。 所以我所做的是:

<target name="undeployOnServer1"> 
      <echo>*********** Start unDeploying war file on SERVER1 *********** </echo> 
     <wldeploy 
     action="undeploy" verbose="true" debug="true" 
     name="${wls.appname}" 
     user="${wls1.user}" password="${wls1.password}" 
     adminurl="${wls1.adminurl}"  
     failonerror="false" 

     /> 
    </target> 

,並改變了deployOnServer1目標爲

<target name="deployOnServer1" depends="undeployOnServer1"> 

,但現在,在取消部署它說, 沒有名爲「MYAPP」應用程序取消部署 和部署說, 無法部署,因爲有其他應用程序具有相同的上下文路徑'/ myapp'。

如何解決這個問題?

回答

0

我覺得這個屬性缺失: 目標=「$ {} wls1.targets」

1

按照sample build.xml files for wldeploywldeploiy Ant Task Reference,該targets屬性需要指定(除非應用程序部署在管理Server實例):

<target name="undeploy"> 
    <wldeploy 
     action="undeploy" verbose="true" debug="true" 
     name="DeployExample" 
     user="weblogic" password="weblogic" 
     adminurl="t3://localhost:7001" targets="myserver" 
     failonerror="false" /> 
    </target> 

這是targets屬性的描述:

應用程序部署到的目標服務器列表 。
該屬性的值 是 以逗號分隔的目標 服務器,集羣或虛擬 主機的列表。
如果在部署 應用程序時未指定 目標列表,則目標的默認值爲 Administration Server 實例。

相關問題