핵심이 있는 템플릿을 불러오는 중 문제가 발생했습니다.물건을 숨긴다
13744 단어 leiningen
묘사
은 2.4.0과 2.4.2(jdk 1.7.0 60)를 사용하여 테스트를 진행하였다.lein new <project-name>
을 통해 새 프로젝트를 만들면 다음과 같은 오류가 발생합니다.Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at clojure.lang.RT.loadClassForName(RT.java:2093)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at stencil.core$loading__4958__auto__.invoke(core.clj:1)
at stencil.core__init.load(Unknown Source)
at stencil.core__init.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at clojure.lang.RT.loadClassForName(RT.java:2093)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:512)
at leiningen.new.templates$loading__4958__auto__.invoke(templates.clj:11)
at leiningen.new.templates__init.load(Unknown Source)
at leiningen.new.templates__init.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at clojure.lang.RT.loadClassForName(RT.java:2093)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at leiningen.new$loading__4958__auto__.invoke(new.clj:1)
at leiningen.new__init.load(Unknown Source)
at leiningen.new__init.<clinit>(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at clojure.lang.RT.loadClassForName(RT.java:2093)
at clojure.lang.RT.load(RT.java:430)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at leiningen.core.utils$require_resolve.invoke(utils.clj:68)
at leiningen.core.utils$require_resolve.invoke(utils.clj:71)
at leiningen.core.main$lookup_task_var.invoke(main.clj:48)
at leiningen.core.main$pass_through_help_QMARK_.invoke(main.clj:55)
at leiningen.core.main$task_args.invoke(main.clj:58)
at leiningen.core.main$resolve_and_apply.invoke(main.clj:286)
at leiningen.core.main$_main$fn__4295.invoke(main.clj:357)
at leiningen.core.main$_main.doInvoke(main.clj:344)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.lang.Var.invoke(Var.java:379)
at clojure.lang.AFn.applyToHelper(AFn.java:154)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.core$apply.invoke(core.clj:624)
at clojure.main$main_opt.invoke(main.clj:315)
at clojure.main$main.doInvoke(main.clj:420)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.lang.Var.invoke(Var.java:388)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.io.FileNotFoundException: Could not locate clojure/data/priority_map__init.class or clojure/data/priority_map.clj on classpath: , compiling:(clojure/core/cache.clj:1:1)
at clojure.lang.Compiler.load(Compiler.java:7142)
at clojure.lang.RT.loadResourceScript(RT.java:370)
at clojure.lang.RT.loadResourceScript(RT.java:361)
at clojure.lang.RT.load(RT.java:440)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at stencil.loader$fn__9533.invoke(loader.clj:43)
at stencil.loader__init.load(Unknown Source)
at stencil.loader__init.<clinit>(Unknown Source)
... 101 more
Caused by: java.io.FileNotFoundException: Could not locate clojure/data/priority_map__init.class or clojure/data/priority_map.clj on classpath:
at clojure.lang.RT.load(RT.java:443)
at clojure.lang.RT.load(RT.java:411)
at clojure.core$load$fn__5066.invoke(core.clj:5641)
at clojure.core$load.doInvoke(core.clj:5640)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5446)
at clojure.core$load_lib$fn__5015.invoke(core.clj:5486)
at clojure.core$load_lib.doInvoke(core.clj:5485)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$load_libs.doInvoke(core.clj:5524)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core$require.doInvoke(core.clj:5607)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core.cache$eval592$loading__4958__auto____593.invoke(cache.clj:9)
at clojure.core.cache$eval592.invoke(cache.clj:9)
at clojure.lang.Compiler.eval(Compiler.java:6703)
at clojure.lang.Compiler.eval(Compiler.java:6692)
at clojure.lang.Compiler.load(Compiler.java:7130)
... 121 more
2.3.4 공사.토론 #1
이거 복사할 수 없어요.당신은 어떻게 설치했습니까?토론 #2
2.4.0은 자체 제작 소프트웨어를 통해 설치됩니다.나는 직접 만든 버전을 마운트 해제하고 자술한 파일의 설명으로 2.4.2(https://github.com/technomancy/leiningen#installation).2.4.0과 2.4.2는 모두 나에게 이 잘못을 주었다.
2.3.4 유효(
lein upgrade 2.3.4
을 통해 롤백) 토론 #셋
플러그인에 문제가 있는 것 같습니다.사용자 파일에 lein deps :plugin-tree
의 출력과 플러그인 목록을 붙일 수 있습니까?토론 #4
출력: [cider/cider-nrepl "0.7.0-20140613.143723-23"]
[cljs-tooling "0.1.3-20140526.024002-4" :exclusions [[org.clojure/clojure]]]
[compliment "0.1.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/java.classpath "0.2.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/tools.nrepl "0.2.3" :exclusions [[org.clojure/clojure]]]
[org.clojure/tools.trace "0.7.8" :exclusions [[org.clojure/clojure]]]
[org.tcrawley/dynapath "0.2.3" :exclusions [[org.clojure/clojure]]]
[jonase/eastwood "0.1.1"]
[leinjacker "0.4.1"]
[org.clojure/core.contracts "0.0.1"]
[org.clojure/core.unify "0.5.3"]
[org.clojars.brenton/google-diff-match-patch "0.1"]
[org.clojure/clojure "1.5.1"]
[org.clojure/tools.analyzer.jvm "0.1.0-beta8"]
[org.clojure/core.memoize "0.5.6"]
[org.clojure/core.cache "0.6.3"]
[org.clojure/data.priority-map "0.0.2"]
[org.ow2.asm/asm-all "4.1"]
[org.clojure/tools.analyzer "0.1.0-beta8"]
[org.clojure/tools.reader "0.8.3"]
[lein-ancient "0.5.5"]
[ancient-clj "0.1.9"]
[clj-aws-s3 "0.3.7" :exclusions [[org.clojure/clojure]]]
[com.amazonaws/aws-java-sdk "1.4.2.1"]
[org.codehaus.jackson/jackson-core-asl "1.8.9"]
[org.codehaus.jackson/jackson-mapper-asl "1.8.9"]
[clj-http "0.7.9" :exclusions [[org.clojure/clojure]]]
[cheshire "5.3.1" :exclusions [[org.clojure/clojure]]]
[com.fasterxml.jackson.core/jackson-core "2.3.1"]
[com.fasterxml.jackson.dataformat/jackson-dataformat-smile "2.3.1"]
[tigris "0.1.1"]
[commons-io "2.4" :exclusions [[org.clojure/clojure]]]
[crouton "0.1.1" :exclusions [[org.clojure/clojure]]]
[org.jsoup/jsoup "1.7.1"]
[org.apache.httpcomponents/httpclient "4.3.2" :exclusions [[org.clojure/clojure]]]
[org.apache.httpcomponents/httpcore "4.3.1" :exclusions [[org.clojure/clojure]]]
[org.apache.httpcomponents/httpmime "4.3.2" :exclusions [[org.clojure/clojure]]]
[slingshot "0.10.3" :exclusions [[org.clojure/clojure]]]
[clj-time "0.6.0" :exclusions [[org.clojure/clojure]]]
[joda-time "2.2"]
[colorize "0.1.1" :exclusions [[org.clojure/clojure]]]
[commons-codec "1.9" :exclusions [[org.clojure/clojure]]]
[commons-logging "1.1.3" :exclusions [[org.clojure/clojure]]]
[org.clojure/data.xml "0.0.7" :exclusions [[org.clojure/clojure]]]
[version-clj "0.1.0" :exclusions [[org.clojure/clojure]]]
[jansi-clj "0.1.0"]
[org.fusesource.jansi/jansi "1.11"]
[rewrite-clj "0.3.8"]
[fast-zip "0.4.0"]
[potemkin "0.3.4"]
[clj-tuple "0.1.2"]
[riddley "0.1.6"]
[lein-bikeshed "0.1.7"]
[org.clojure/tools.cli "0.3.1"]
[org.clojure/tools.namespace "0.2.4"]
[lein-kibit "0.0.8"]
[jonase/kibit "0.0.8"]
[org.clojure/core.logic "0.8.0-rc2"]
[lein-pprint "1.1.1"]
[lein-try "0.4.1"]
다음은 lein deps :plugin-tree
에 포함된 플러그인 목록입니다. [[lein-kibit "0.0.8"]
[lein-ancient "0.5.5"]
[lein-bikeshed "0.1.7"]
[lein-try "0.4.1"]
[lein-pprint "1.1.1"]
[cider/cider-nrepl "0.7.0-SNAPSHOT"]
[jonase/eastwood "0.1.1"]]
~/.lein/profiles.clj
토론 #5
을core.cache
에 추가하여 재현할 수 있지만 마스터가 아닌 실제 2.4.2 버전에서만 재현할 수 있습니다.Clojure 자체의 AOT 오류일 수 있습니다.:plugins
은 내가 Leiningen 2.4.2로 업데이트한 후에 완전히 같은 문제가 생겼다.무슨 방법이 있습니까?토론 #6
토론 #7
을eastwood
버전으로 업그레이드하여 이 문제를 해결해 주었습니다.0.1.4
은 여기서도 마찬가지다. 언제든지 플러그인이 클래스 경로에 토론 #8
을 도입하면 (내 예에서core.cache
) 결국 이 문제에 직면하게 된다.#나에게 기술은 문제 해결에 의존하는 것 같다. 왜냐하면
lein-misaki
은 core.cache
에 dep를 설명했고clojure에서 읽을 때 클래스 경로에서 이 dep를 찾을 수 없기 때문이다.또한 [org.clojure/data.priority-map "0.0.2"]
은 AOT 클래스가 아닌 소스에 분포되어 있습니다.core.cache
@skuro 네, 토론 #9
이 AOT에서 컴파일한 것은 아니지만 Leiningen의 일부 AOT 명칭 공간은core.cache
이 필요합니다. Clojure 컴파일러는 라이브러리를 새 라이브러리로 바꾸는 상황을 잘 처리하지 못합니다.core.cache
토론 #10
은lein-resource
을 통해 같은 문제의 영향을 받았다.나는 stencil
을 사용하지 않았지만 금형은 eastwood
을 사용했다.나는 이스트우드를 보았는데, 그것은 의존성을 없애서 문제를 피하는 것 같았다.만약 이것이 옵션이 아니라면, 어떤 건의가 있습니까?core.cache
stencil in은 lein이기 때문에 저는 그들의 예시를 따랐고 lein resource에 stencil 의존항을 추가했습니다.[stencil "0.3.3": [org.clojure/core.cache]] 제외
Reference
이 문제에 관하여(핵심이 있는 템플릿을 불러오는 중 문제가 발생했습니다.물건을 숨긴다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/technomancy/leiningen/issues/1563텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)