sbt 0.9.1のビルド
いつの間にかsbtのバージョンが0.9.1とかなっていたので、慌てて持ってきました! 昨日、sbtバージョンアップしないなぁ…とか思ってたら、ここにあった。 ■ harrah/xsbt - GitHub https://github.com/harrah/xsbt
sbtはbrewでインストールしてたからbrew管理したかったけど、今の状況を見るとbrew管理しない方がよさそう。
ダウンロード
まずは、ファイルをダウンロードして、展開。 harrah-xsbt-v0.9.1-0-g3ce0e5d.zipというファイル名でした。unzip harrah-xsbt-v0.9.1-0-g3ce0e5d.zip
ビルド…の前の余談
ビルド時にScala 2.9.0-SNAPSHOTの取得に時間がかかっていて、反応がなかったから2.9.0は消した。cd harrah-xsbt-3ce0e5d vi project/build/XSbt.scala
lazy val precompiled29 = precompiledSub("2.9.0-SNAPSHOT")この一行をコメントアウトする。でも、今はこんなことしなくても大丈夫っぽい。
それと、compileをやったらPermGenがOutOfMemoryになった。 そんなわけで、sbtの実行スクリプトは下記にように修正。
java -Xmx1024M -XX:MaxPermSize=512m -jar /usr/local/Cellar/sbt/0.7.4/libexec/sbt-launch-0.7.4.jar "$@"
-Xmx1024M -XX:MaxPermSize=512mを追加して、潤沢にしました。
@teaplanet -Xmx768mでupdateとproguardとpublish-localを別々に実行すると大丈夫でした。PermGenはたぶんクラスが多すぎなんでしょうね。
実際はこれだけあれば足りるらしい。 以下のビルドもこの助言のとおりにやっただけだったりする🙄
ビルド
本題のビルド。sbt set build.scala.versions 2.8.1 reload update proguard publish-localupdateでエラーが出たので、懲りずに何回もやったらなんとか通った。応答遅かったりと、ネットワークの問題かな? proguardも何回かやったけど、エラーは消えなかった。これは難読化とか最適化とか、本体に直接関係ないのでエラー出たままpublish-localした。