2010-06-04 3 views
5

contrib 라이브러리가 포함 된 Clojure REPL을 시작하는 방법을 찾지 못하는 것 같습니다. 설명서를 올바르게 이해했다면 다음 명령을 사용하십시오.Windows에서 clojure-contrib을 설치하는 방법?

C:\clojure-1.1.0>"%ProgramFiles%\Java\jre6\bin\java.exe" -cp clojure.jar:clojure 
-contrib.jar clojure.main 
Exception in thread "main" java.lang.NoClassDefFoundError: clojure/main 
Caused by: java.lang.ClassNotFoundException: clojure.main 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
Could not find the main class: clojure.main. Program will exit. 

그러나 알 수 있듯이 실패합니다. clojure-contrib.jar을 C:\clojure-1.1.0 폴더에 복사했습니다.

누군가가 나를 올바르게 도와 줄 수 있습니까? 마이클의 게시물에

업데이트
덕분에 내 오류가 나는 세미콜론을 사용했다 콜론을 사용하던 것으로 나타났습니다. 이 작품 :

C:\clojure-1.1.0>"%ProgramFiles%\Java\jre6\bin\java.exe" -cp clojure.jar;clojure-contrib.jar clojure.main 
Clojure 1.1.0 
user=> 

답변

7

(가 어느 정도 원래의 숨겨진 반면, 대답, 실제 솔루션을 명시하기 위해 업데이트 ...)

윈도우의 클래스 경로 문자열은 구분 기호로 ;를 사용합니다. 예 :

java.exe -cp "C:\clojure-1.1.0\*" clojure.main 

(I :

java.exe -cp "C:\clojure-1.1.0\clojure.jar;C:\clojure-1.1.0\clojure-contrib.jar" clojure.main 

또는, 당신은 클래스 경로에 지정된 디렉토리에있는 모든 항아리 (즉, 1.5에서 작동하지 것 JDK 1.6 또한의) 포함 와일드 카드를 사용할 수 있습니다 여기에 큰 따옴표를 사용하면 Windows에서는 괜찮습니다. 확인 할 수는 없습니다 ...)

+0

고마워요! 실제로 전체 경로가 아니므로 jar 파일의 구분 기호로 콜론 대신 세미콜론을 사용하면됩니다. Aarg .. – StackedCrooked

+0

하아! 당신이 그것을 알아 채 셨음 좋았습니다 - 저는 분리 기호의 차이점에 주목하고 그 위에있는 문서를 두 번 확인해 보았습니다. 그리고 그 답을 명시 적으로 언급하는 것을 간과 한 몇 가지 이유가있었습니다. 또한 나는'C : \ clojure-1.1.0>'프롬프트를 보지 못했다 ... 모든 것이 잘 끝난 것 같다. :-) 나는 미래의 독자들을 위해서 편집을했다. –

관련 문제