Clojure에서 문제 컴파일
-
03-07-2019 - |
문제
나는 성공하지 않고 Clojure에서 매우 간단한 test.clj를 컴파일하려고 노력했습니다. 나는있다 실 에 Clojure Google Group 몇 가지 반응이 있지만 아무것도 도움이되지 않았습니다. 신속하게 요약하려면 여기 내 Clojure 파일이 있습니다.
(ns test.test
(:gen-class))
(defn -main
[gre]
(println (str "Hello " gre)))
기본적으로 그것은 예제 파일입니다 Clojure 문서.
이 파일을 적절하게 배치했습니다 clojure/src/test/test.clj
, 컴파일 할 수 있어야합니다 (compile 'test.test)
, 그러나 나는 계속 오류를 얻는다 :
java.io.IOException: The system cannot find the path specified (test.clj:1)그것은 그것이 클래스 경로 문제라고 믿게합니다. 나는 Clojure documenation 스레드의 최신 제안뿐만 아니라
java -classpath .;src;classes;clojure.jar clojure.main
.
도움이되면 내 파일 시스템은 다음과 같습니다.
-+-clojure
+-classes/
+-+-src/
| |-+-test/
| | \-test.clj
+-\-test.clj
+-test.clj
+-clojure.jar
추신 나는 Vista Ultimate에서 달리고 있으므로 혹시 권한 문제가되지만 권한을 확인했으며 그에 대한 잘못된 것을 찾을 수 없었습니다.
해결책
컴파일을위한 콘솔 출력 test.clj Windows :
C:\clojure>dir /b/s
C:\clojure\classes
C:\clojure\src
C:\clojure\src\test
C:\clojure\src\test\test.clj
C:\clojure>java -cp c:\dev\clojure.jar;.\src;.\classes clojure.lang.ReplClojure
user=> (compile 'test.test)
test.test
user=>
생성 된 클래스 파일은 클래스 디렉토리에 있습니다.
또한, 당신은 당신이 당신의 기본. 수정 된 버전 :
(ns test.test
(:gen-class))
(defn -main
[gre]
(println (str "Hello " gre)))
다른 팁
C:\clojrue\java -cp .\src;.\classes;clojure.jar
-Dclojure.compile.path=classes clojure.lang.Compile test.test
제휴하지 않습니다 StackOverflow