2
이 질문과 같이 간단하게 동일한 디렉토리에서 서로 다른 네임 스페이스에 대해 올바른 방법을 찾을 수 없습니다.ClassNotFoundException 다른 Ns를 사용 중일 때
project_root/src/babbler/core.clj
:
(ns babbler.core
(:gen-class)
(use '[clojure.string :only (join split)]))
(defn foo [] "Foo")
다음 project_root/src/babbler/bar.clj
: 나는 두 개의 파일이
:main babbler.bar
를 통해 내 project.clj
에 지정된 기본 방법을 포함
(ns babbler.bar)
(use [babbler.core :as babble])
내 전체 구조는 기본 leiningen 템플릿으로 반 시계 방향으로 생성됩니다.
이
Exception in thread "main" java.lang.ClassNotFoundException: babbler.core, compiling:(babbler/bar.clj:3:1)
at clojure.lang.Compiler.analyze(Compiler.java:6380)
at clojure.lang.Compiler.analyze(Compiler.java:6322)
at clojure.lang.Compiler$VectorExpr.parse(Compiler.java:3024)
at clojure.lang.Compiler.analyze(Compiler.java:6363)
at clojure.lang.Compiler.analyze(Compiler.java:6322)
(...)
(your : require 구문을 사용하여) 다른 오류가 발생하는 것 같습니다. 접두사 목록의 예외 lib 이름에는 마침표가 없어야합니다. 왜 그랬을까요? – FrobberOfBits
을 핵심으로 사용하려면'(: require [clojure.string : refer [join split]])'이 필요합니다. http://stackoverflow.com/questions/9810841/clojure-loading-dependencies-at-the-repl을 참조하십시오. –