Gradle で Tomcat をかんたんに起動停止する
東京では「G*ワークショップZ Mar 2013 - 日本Grails/Groovyユーザーグループ」が本日開催されて Gradle が盛り上がってます。うらやましい限りです。
Gradle から Tomcat を操作することができます
・Tomcat にアプリケーション(war)をデプロイする
・Tomcat のアプリケーションを起動する
・Tomcat のアプリケーションを停止する
・Tomcat のアプリケーションをアンデプロイする
こういったことは Ant タスクを Gradle から実行することで Gradle で実現できました。
次のサイトを参考にするといいです。
それ以前に Tomcat 自体を起動、停止したい
そもそも Tomcat 自体を起動、停止するにはどうしたらいいのか?
TOMCAT_HOME/bin/bootstrap.jar を使うと Tomcat を起動停止できるみたいですが、
なんだかうまくいきませんでした。
Groovy には execute メソッドがありました
「難しく考えずに、startup.sh を直接たたけばいいんだ」
ということに気づいたので、細かいことは考えずに。
Groovy には、String クラスに execute メソッドがあって
コマンドライン文字列をそのまま実行できます。簡単です。
ということで…
def tomcatHome = "/Applications/apache-tomcat-7.0.xx" task startupTomcat << { "${tomcatHome}/bin/startup.sh".execute() } task shutdownTomcat << { "${tomcatHome}/bin/shutdown.sh".execute() }
すでに起動してたらどうするんだ?
とか、そういう例外処理はまあ置いておいて。
gradle startupTomcat
という感じで Tomcat を起動できます。
いい方法を思いつくまではこれで行きます。