Code Aquarium

minazoko's blog -*- 水底のブログ -*-

ClojureでJavaのpackage-info.javaを一括生成

 少し前のネタですが twitter TLで見かけたので書いてみました。

 お題: http://npnl.hatenablog.jp/entry/2012/08/17/014930

  • 出力ファイルの文字コード指定可能
  • パスセパレータはシステム値からとるのでOS非依存。
  • 改行コードもシステムプロパティから取得(これは固定にすべきかもしれない)。
 

 -main の第一引数にソースツリーのベースパスを指定(絶対パス, 相対パスOK)。指定しなければ "." で実行されます。

 leiningenなので

lein run ../../src

みたいにも実行できますが、standalone jar を作った方が便利でしょう。lein uberjar で作った jar を適当なパスに置いて。

java -jar PATH/TO/pkginfo-gen-0.1.0-SNAPSHOT-standalone.jar TARGET_DIR

とすればOK。