1
Common Lispでは、読み込み時に特殊変数が設定されているので、簡単に http://clhs.lisp.se/Body/v_ld_pns.htm になっています。Clojureのロードファイルで使用されるファイル名はどのようにして見つけられますか?
しかし、私はClojureでそれを行う方法を見つけることができないようです。 load-fileに渡されたファイルを見つける方法はありますか?
Common Lispでは、読み込み時に特殊変数が設定されているので、簡単に http://clhs.lisp.se/Body/v_ld_pns.htm になっています。Clojureのロードファイルで使用されるファイル名はどのようにして見つけられますか?
しかし、私はClojureでそれを行う方法を見つけることができないようです。 load-fileに渡されたファイルを見つける方法はありますか?
load-file
機能は、最終的に(存在する場合)、それは動的SOURCE
により指定変数にソース名を結合Compiler.java#L7395、(Compiler.java#L235を参照)、clojure.core/*source-path*
別名に達します。
/tmp/test.clj
で
:REPLで
(print clojure.core/*source-path*)
:
user=> (load-file "/tmp/test.clj")
test.cljnil
ほとんどが、私はレイン幹部file.cljと(ロード・ファイル "file.clj")から同じ結果を得ます。どのように私は2つの違いを教えてください?私はLineNumberingPushbackReaderが助けになるだろうと思っていますが、私はCLojureを初めて使っています。 –
私は分かりません。おそらく、環境変数( 'jvm-opts'プロパティに' -Dxxx'をつけて)を渡すか、別の環境に依存しないようにしてください(バグが多くなる可能性があります)。 – coredump