Antで起動と停止

ちょっとWebLogicいいかもー.評価上昇中.

Antを呼び出す前に環境変数設定用のスクリプトを読んでおいて,

@echo off

set CLASSPATH=
set PATH=

CALL %WEBLOGIC_HOME%\server\bin\setWLSEnv.cmd

set CLASSPATH=%CLASSPATH%;F:\workspace\connector-j-xa-testing\lib\connector-j\mysql-connector-java-5.0.0-beta-jver-20050822-01-bin.jar

..\lib\ant\bin\ant.bat weblogic

#クラスパスって相対パスで定義できないんでしたっけ?

起動はこんな感じ.

<taskdef name="wlserver" classname="weblogic.ant.taskdefs.management.WLServer"/>
<target name="startWebLogic">
    <delete dir="tmp"/>
    <mkdir dir="tmp"/>   
    <wlserver dir="tmp" host="127.0.0.1" port="7001" generateConfig="true" domainname="testDomain"
        servername="testServer" username="weblogic" password="weblogic" action="start"/>
</target>

停止はこんな感じ.

<target name="stopWebLogic">
    <wlserver host="127.0.0.1" port="7001"
              username="weblogic" password="weblogic" action="shutdown" forceshutdown="true"/>
</target> 

これの何が良いかと言うと,

  • Antからスクリプトを呼び出すやり方だとWinかUnixかを判定してそれぞれ別々に呼び出すようにしないとだめで面倒くさかったのがなくなる
  • Antの中からForkさせる形になりいろいろ面倒くさかったのがなくなる
  • 事前にドメインを作っておく必要がない.テスト実施の際にその場で新しく最小構成で作ってくれる.
  • その場合,既存の環境を汚さない独立したドメインを作れる.しかもAntがやってくれるのでもちろんOS非依存.
  • 次のエントリで説明するようなことができる←ここ重要