shake 0.4.0 と clojure 1.6.0 はNG

shake を試そうとしたけど repl が立ち上がらない

こんな感じのメッセージが出て立ち上がらない...

Exception in thread "main" java.lang.IncompatibleClassChangeError: Found class clojure.asm.ClassVisitor, but interface was expected, compiling:(/tmp/form-init786032944266256305.clj:1)
    at clojure.lang.Compiler.analyzeSeq(Compiler.java:6463)
    at clojure.lang.Compiler.analyze(Compiler.java:6260)
    at clojure.lang.Compiler.eval(Compiler.java:6509)
    at clojure.lang.Compiler.load(Compiler.java:6970)
    at clojure.lang.Compiler.loadFile(Compiler.java:6930)
    at clojure.main$load_script.invoke(main.clj:274)
    at clojure.main$init_opt.invoke(main.clj:279)
    at clojure.main$initialize.invoke(main.clj:307)
    at java.lang.Thread.run(Thread.java:745)
:

原因は clojure のバージョンに shake が追いついていないこと
ま、shake の開発止まってるししょうがないよね ;)

ダメな組み合わせ

; project.clj
  :dependencies [
                 [org.clojure/clojure "1.6.0"]
                 [shake "0.4.0"]
                 ])

大丈夫な組み合わせ

; project.clj
  :dependencies [
                 [org.clojure/clojure "1.5.0"]
                 [shake "0.4.0"]
                 ])

clojure 1.5.0 は行ける。 java io じゃなくて、shake 使いたいんじゃ!! って場合は、ちょっとバージョンを落とす必要があるみたい