
java開発でビルドをMavenで行っています。
そのビルドをinstallコマンドで実行しているのですが
[DEBUG]、[INFO]ログが多く
本当に見たい警告や異常時のエラーに気づきづらい。。。
そこで以下のようなシェルで実行することにしました。
*実行環境はMac terminalです。
#!/bin/sh
########################################################################
#作成者 :都内SE
#作成日 :2017/09/13
#概要  :ビルドするディレクトリに移動してビルドします。
         ビルド完了後、移動前のディレクトリに戻ります。
########################################################################
#pom.xmlを配置しているディレクトリを指定します。
DIRECTORY_TARGET=/Users/tonaise/Documents/workspace/JavaProject
DIRECTORY_CURRENT=`pwd`
RETURN_CODE=0
#mavenコマンドがインストールされているディレクトリを指定します。"which mvn"をターミナルで実行すると表示されるディレクトリです
alias mvn=/usr/local/apache-maven-3.3.9/bin/mvn
echo [`date +"%Y/%m/%d %p %H:%M:%S"`]"[ビルドシェル]ビルドするディレクトリへ移動:" ${DIRECTORY_TARGET}
cd ${DIRECTORY_TARGET}
echo [`date +"%Y/%m/%d %p %H:%M:%S"`]"[ビルドシェル]ビルド実行"
mvn clean install -q
${RETURN_CODE}=$?
echo [`date +"%Y/%m/%d %p %H:%M:%S"`]"[ビルドシェル]ビルド実行 完了 リターンコード:" ${RETURN_CODE}
# シェル実行前の元のディレクトリへ移動(git , mvn コマンド実行時にパスを渡せればこの処理は不要)
echo [`date +"%Y/%m/%d %p %H:%M:%S"`]"[ビルドシェル]シェル実行前の元のディレクトリへ移動:" ${DIRECTORY_CURRENT}
cd ${DIRECTORY_CURRENT}
exit $RETURN_CODE}
mvn clean install -q がビルド(install)コマンドとなります。
それぞれの意味は以下の通りです。
mvn ・・・Mavenコマンド自体です。 clean ・・・targetディレクトリを削除します。前回ビルド時の情報が不具合を起こすケースがあるので指定します。 install・・・ビルド、正確には作成したパッケージ(jar や war)をローカルリポジトリ(.m2配下)に配置します。 -q ・・・実行時のログはエラーのみを表示します。
警告まで消えちゃうから mvn 実行結果を grep した方がいいかも・・・