2011-11-28 14 views
8

私はウェブアプリケーションにclojure.tools.loggingを使用しています。長い時間、それはorg.clojure/tools.logging "0.1.2"でうまく動作します。私は、開発テストの目的で複数回、クロージャーの再起動を開始してから停止します[lein repl]。突然、replが次のエラーをスローします。ロギングライブラリをorg.clojure/tools.logging "0.2.3"に更新しましたが、使用しません。それでも私は同じエラーを取得します、それは、replでこのエラーを与えただけですが、アプリケーションを実行すると、正常に動作します。私はどこに問題があるのか​​を特定していません。NoClassDefFoundErrorとクロージャツールロギング

私はclojure.tools.loggingでlo4jを使用しています。

java.lang.NoClassDefFoundError: clojure/tools/logging/impl/LoggerFactory (NO_SOURCE_FILE:0) 

答えて

13

追加先:project.cljファイルのaotは私のために働いていました。

:aot [clojure.tools.logging.impl ...] 
+0

これは私のためにも機能します。ありがとう! –

+0

私のために働いた。おそらく受け入れられた答えになるはずです。 – Jeb

6

私はきれいなレインを試し、その後DEPSレイン、その後、レインコンパイルし、最終的にはREPLをLEINでしょう。それがうまくいかなかった場合は、次にlibディレクトリとclassesディレクトリを手動で削除してからlein depsを実行し、leinコンパイルしてからreplを再度実行します。

+1

私は前にこれらのステップを試しましたが、使用しませんでした! –

+0

ヤック、あなたのコードは直接clojure.tools.logging.impl.LoggerFactoryを参照していますか?もしそうなら、clojure logging jarを見つけてzipアーカイブとして開き、LoggingFactoryクラスを探します。存在するが、別のパッケージにある場合は、コードを更新します。それがなければ、あなたはそれを置き換えるものを研究しなければならないでしょう。あなたのコードがそれを参照しておらず、そのファイルがjarファイルにない場合、プロジェクトにバグがある可能性があります。メンテナに問い合わせる必要があります。 – Bill

+0

また、プロジェクトcljファイルから依存関係を投稿することはできますか? – Bill

0

私は、これは古いものですけど、私はちょうど同じ問題に遭遇したと明らかに〜/ .lein/profiles.cljものlog4jとの競合のいくつかの並べ替えを持っていました。 私は完全にそれをクリアし、それは働き始めた。