Clojure 및 Eclipse에 초보자 그래서 나와 함께 참아주십시오.Eclipse에서 Clojure 디버깅
CCW (Counter Clockwise) 및 Leiningen이 설치된 Eclipse Juno에서 Clojure 1.5.1을 실행 중이며 Eclipse 디버거에서 Clojure 코드를 실행하는 프로세스를 테스트하고 있습니다. 시작으로-Clojure의 응용 프로그램 및 REPL 실행 - 디버그를 클릭
(ns myproject.core)
(defn foo [str]
(println str "Hello, World!")
)
(defn hello [who]
(str "Hello " who "!"))
나는 (println str "Hello, World!")
및 (str "Hello " who "!"))
라인에 중단 점을 설정은, 패키지 탐색기 창에서 "myproject라는"를 선택 : 나는 다음과 같은 파일을 사용하고 있습니다 . 이제, 여기에 문제/문제이다 : 나는 REPL에서 (hello "Fred")
를 입력하면 나는 (myproject.core/hello "Fred")
로 프로 시저 호출을 한정하려고하면
CompilerException java.lang.RuntimeException: Unable to resolve symbol: hello
in this context, compiling:(NO_SOURCE_PATH:1:1)
내가 같은 오류가 얻을. 내가 실행할 수있는 유일한 방법은 먼저
(require 'myproject.core)
을 발행 한 다음
(myproject.core/hello "Fred")
을 발행하는 것입니다. 이렇게하면 중단 점이 인식되고 코드가 적절한 위치에서 중단되며 변수가 표시되고 수명이 좋습니다.
(require 'myproject.core)
대신 (use 'myproject.core)
을 입력하면 함수 이름을 완전히 한정하지 않아도되지만 use
을 사용하는 것은 권장되지 않습니다.
반면에 : Ctrl-Alt-S를 사용하여 REPL에 코드를 "보내"REPL을 시작한 경우 (이것은 Windows에서) (hello "Fred")
을 입력하고 예상되는 결과를 얻을 수 있습니다. 물론, 이렇게하면 디버거가 시작되지 않고 중단 점이 생성되지 않습니다.
내 질문 : 이클립스 디버거에서 코드를 실행하고 네임 스페이스를 자동으로 인식하도록하는 방법이 있습니까? 코드는 require
또는 use
을 사용할 필요가없고 Ctrl-Alt-S를 통해 REPL에 "전송"되며 함수 이름을 네임 스페이스로 완전히 한정하지 않아도됩니까?