2016-12-05 9 views
0
  • Clojureのバージョン:1.8.0
  • Leiningenをバージョン:2.7.1
  • JDKのバージョン:1.8.0_101

私は、ライブラリを必要としはレインのREPLで、サードパーティのライブラリを必要とすることはできません

user=> (require '[reagent.core :as r]) 
nil 

出力は、私はそれが成功を意味だと思うnilに、次のとおりです、reagentはレインのREPLで、(プロジェクトの依存関係に追加しました)と言います。しかし、私はrを使用する場合、(r/atom 3)を言う、REPLはエラーをスロー言う:奇妙なよう

CompilerException java.lang.RuntimeException: Unable to resolve symbol: r in 
this context, compiling: (/private/var/folders/_y/n3ym4ftj2ld9tl471g_kcv_00000gn/T 
/form-init1002540725014588615.clj:1:4923) 

を。 誰かが何か考えていますか?

ところで、私はjavaとclojureライブラリが必要です。

+3

試薬は、主にClojureScriptライブラリである。コア名前空間にはユーティリティマクロしかありません。あなたはClojureScript REPLからこれを実行していますか? –

+0

あなたは '私がrを使うときに何を意味するのか詳しく説明できますか...どうですか? 'r'を入力するだけでREPLのEnterキーを押すと、このエラーが発生します。なぜなら、' r'は記号ではないからです。 – Josh

+0

@MichielBorkentはい、それは恥ずかしがり屋ですが、私はその違いを無視するかもしれませんが、あなたはあなたの問題が何であるかを言うことは難しいです。 clojure REPLとclojurescript REPL .. – minddy

答えて

1

おそらくClojureScriptライブラリ:Clojure REPL内の試薬を使用しようとしています。エラーの原因を見つけることは、ClojureとClojureScriptが非常に異なる環境、それぞれJVMとJavaScriptで動作すると考えられるため、それほど有用ではありません。しかし、ClojureScriptの文脈でも同じ試みが成功します。

テストとして、figwheelテンプレートに基づいてClojureScriptプロジェクトを作成します。

lein new figwheel rtest 
cd rtest 

プロジェクト

rlwrap lein figwheel 

あなたは自動的にブラウザのREPLに接続されるファイル名を指定して実行project.cljに

:dependencies [[org.clojure/clojure "1.8.0"] 
       [reagent "0.6.0"] ; only add this line 

を摂政依存関係を追加します。それ以外の場合はhttp://localhost:3449/index.htmlを参照して接続してください。

あなたのやり直しができます。

cljs.user=> (require '[reagent.core :as r]) 
nil 
cljs.user=> (type r/render-component) 
#object[Function "function Function() { [native code] }"] 
+0

ああ、それは動作します。私は明確にclojureとclojurescriptの実行環境の違いを理解していません。ありがとう! – minddy

関連する問題