일부 데이터베이스 작업을 수행하기 위해 작은 네임 스페이스를 작성했으며 다른 네임 스페이스 내에서 사용하고 싶습니다. 일반적으로 같은 디렉토리에있는 파일을 가지고 다음을 수행하면여러 개의 네임 스페이스가있는 Clojure CLR
(ns program (:require [other-ns :as other]) (:gen-class))
모두가 필요합니다. 그러나 Clojure CLR에서는 작동하지 않지만 컴파일러는 other-ns에 대해 알지 못한다고 불평합니다. 이렇게하는 적절한 방법은 무엇입니까? 모든 네임 스페이스에 대해 별도의 어셈블리가 필요합니까?
[편집] 또 다른 예를
another.clj
(ns another)
(defn hello [name] (str "Hello " name))
나는 REPL에서 program.clj을로드하고이 메시지를받을
(ns program
(:require [another :as a])
(:gen-class))
program.clj :
을FileNotFoundException로드 경로에서 another.clj.dll 또는 another.clj를 찾을 수 없습니다. clojure.lang.RT.load (d : \ work \ clojure-clr \ Clojure \ Clojure \ Lib \ RT.cs : 3068)
http://clojure.org/libs를보고 예상 장소에 모든 네임 스페이스/파일이 있는지 확인하십시오. 무엇이 잘못되었는지 알아낼 수 없다면, (ns ..) 형식, 파일 시스템의 위치 및보고있는 오류를 보여주십시오. –
먼저 프로젝트를 컴파일 할 때 오류가 발생합니까? 그것을 빌드 한 다음 REPL에 program.clj를로드 해보십시오. 내가 물어볼 수있는 유일한 다른 점은 새로운 vsClojure를 사용하고 있다는 것입니다. – Rob