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