Cloverのビルドに挑戦するも失敗するの巻
AtlassianのCloverがオープンソース化したと聞いて、早速ビルドしてみるも失敗。Linuxで再挑戦するので、いきさつをメモっておく。
ソースコードはここから入手。
ビルド手順はこちら。
この通りにやってもコケるので、以下はその補足。
用意するもの
- Ant 1.9.4 - 面倒なのでCloverと同じ場所に展開する
- Maven 3.2.5 - 同上
- IDEA 13 CE
- JDK1.6
Cloverのソースコードの都合でJDK1.6を使った方がよい。その流れでMavenも3.2.5にしとく(Mavenが新しすぎるとJDK6に対応してない)。あと、JDK1.6はApple JDKを使ったのだけれど、それが敗因だったのかも。
設定する環境変数
手順にはM2_HOMEってあるけど、M3_HOMEじゃないとコケる。
export ANT_HOME=./apache-ant-1.9.4 export M3_HOME=./apache-maven-3.2.5 export JAVA_HOME=`/usr/libexec/java_home -v 1.6`
PATHには上記のant, mvn, javaを通しておくこと。
事前準備
build.propertiesにIDEA13 CEのパスを指定しておく。
#idea13.home=${build.deps.dir}/idea/13.0.133193 idea13.home=/Applications/IntelliJ IDEA 13 CE.app/Contents
ビルド
mvn install -f clover-core-libs/jarjar/pom.xml mvn install -Prepack -f clover-core-libs/pom.xml mvn install -Prepack -f clover-idea/clover-jtreemap/pom.xml ant global.clean clover-idea.pkg -Dpath.to.mvn=./apache-maven-3.2.5/bin/mvn
途中まで順調にビルドしてるけど、こんなメッセージ吐いてコケる。なんかJDK替えないと解決しなさそうなので、OpenJDK入れるかLinuxでやり直す。
clover-idea-jps.build: [mkdir] Created dir: /Users/masanobuimai/Desktop/clover/clover-idea/clover-idea-jps/target/classes [javac] Compiling 11 source files to /Users/masanobuimai/Desktop/clover/clover-idea/clover-idea-jps/target/classes [javac] コンパイラで例外が発生しました (1.6.0_65)。Bug Parade に同じバグが登録されていないことをご確認の上、Java Developer Connection (http://java.sun.com/webapps/bugreport) にてバグの登録をお願いいたします。レポートには、そのプログラムと下記の診断内容を含めてください。ご協力ありがとうございます。 [javac] java.lang.NullPointerException
たぶん、こっちのほうが正しいビルド手順っぽい(ただし、こっちはMercurialも必要)。
ant global.clean clover-idea.prod -Dclover.prod.build=true -Dpath.to.mvn=./apache-maven-3.2.5/bin/mvn