Maven2.0とは

Maven1も使ったことがないので、実質Maven2だろうが1だろうがいいんだけど、新しいものに超したことはないので、Mave2.0にトライする事にしました。
Maven1.0からかなり大きな変更があったようです。

  • 早い
  • 小さい
  • ビルドサイクルを定義したので、prereqs, preGoals, postGoalsが不要
  • compile, test, installといったゴールも使わない
  • SNAPSHOTの扱いを改善
  • プロパティを廃止し、POMのみとしている
  • maven.xmlを使用しない
  • Jellyを使わない
  • リポジトリ構成の改善

と言われても、まだまだあまり実感がわきません。

早速ダウンロードです。Maven公式ページ
maven-2.0.4-bin.zipをダウンロードしました。

インストール

どうやら展開してパスを通すだけで使用できるようです。
ここに展開しました。

[root@javabean maven-2.0.4]# pwd
/root/java/maven-2.0.4

次にパスを通します。

[root@javabean java]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
[root@javabean java]# PATH=$PATH:/root/java/maven-2.0.4/bin
[root@javabean java]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/root/java/maven-2.0.4/bin

さて、確認だー

[root@javabean java]# mvn -v
Error: JAVA_HOME is not defined correctly.
  We cannot execute java

おや、JAVA_HOMEのパスが必要らしい。。。

JDKのインストールしてるパスを通すらしい

[root@javabean java]# which javac
/usr/bin/which: no javac in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/root/java/maven-2.0.4/bin)

JDKが入ってないのね。。。
そいでは、JDKをとってきますか。。。

というわけで、JDKもいれました。

/opt/IBMJava2-142

ここにいれてます。

そして、JAVA_HOMEを設定

[root@javabean java]# JAVA_HOME=/opt/IBMJava2-142
[root@javabean java]# echo $JAVA_HOME
/opt/IBMJava2-142

んー、それでもうまくいかないぞ。
しかし、メッセージが変わった。

[root@javabean ~]# mvn -v
Warning: JAVA_HOME environment variable is not set.
Sorry, but JDK 1.4 or above is required to execute Maven
You appear to be using Java version: 1.4.2

はてさて。