Macでバッチ(command)ファイルを作る

MacにJava8を入れて開発をしているのですが、Java6に切り替えてPlayFrameworkのアプリケーションをコンパイルする必要が出ました。

毎回Javaのバージョンを切り替えてコンパイルし直すのが手間なので、バッチ化します。

Macでバッチファイルを作る方法です。

ファイルの作成

compile.command というファイルをPlay Frameworkのアプリケーションのルートに配置します。

cd `dirname $0`
export JAVA_HOME=`/usr/libexec/java_home -v "1.6"`
PATH=${JAVA_HOME}/bin:${PATH}
play compile

バッチファイルを普通に実行するとカレントディレクトリがバッチファイルのおいてある場所じゃなくなっているので、

cd `dirname $0`

でディレクトリを変えてあげています。

ファイルの改行コードは「LF」にします。

ファイル名はXXX.commandにしておくことでTerminalに紐付けられるようです。

アクセス権限の付与

このままでは権限がなく実行できないのでパーミッションを変更します。

chmod u+x compile.command

これでFinderからダブルクリックでコンパイルが実行されるようになりました。