clojure中依赖项的消歧
我向分发版添加了一个依赖项 当我添加一个请求时clojure中依赖项的消歧,clojure,Clojure,我向分发版添加了一个依赖项 当我添加一个请求时 (ns simulator.core (:require [distributions.core :refer :all])) 别让莱恩跑。它疯了。它试图找到一个不同的发行包(一个来自白炽灯,但我并没有在任何地方引用白炽灯) 如果我看一下源代码,没有提到白炽灯。这个白炽灯是从哪里来的?我怎么告诉clojure这不是我要找的依赖关系 依赖关系树看起来很干净: [clojure-complete "0.2.5" :exclu
(ns simulator.core
(:require [distributions.core :refer :all]))
别让莱恩跑。它疯了。它试图找到一个不同的发行包(一个来自白炽灯,但我并没有在任何地方引用白炽灯)
如果我看一下源代码,没有提到白炽灯。这个白炽灯是从哪里来的?我怎么告诉clojure这不是我要找的依赖关系
依赖关系树看起来很干净:
[clojure-complete "0.2.5" :exclusions [[org.clojure/clojure]]]
[distributions "0.1.2"]
[net.mikera/core.matrix "0.57.0"]
[org.clojure/tools.macro "0.1.5"]
[net.mikera/vectorz-clj "0.45.0"]
[net.mikera/clojure-utils "0.7.0"]
[net.mikera/vectorz "0.63.0"]
[net.mikera/mathz "0.3.0"]
[net.mikera/randomz "0.3.0"]
[us.bpsm/edn-java "0.4.6"]
[org.apache.commons/commons-math3 "3.6.1"]
[nrepl "0.7.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.10.1"]
[org.clojure/core.specs.alpha "0.2.44"]
[org.clojure/spec.alpha "0.2.176"]
看不到白炽灯
如果我加上白炽灯
:dependencies [[org.clojure/clojure "1.10.1"]
[distributions "0.1.2"]
[incanter/incanter-charts "1.9.3"]]
我明白了
更新:通过在一个全新项目中添加白炽灯,该错误得以清除。在
0.1.2-SNAPSHOT
时间内,require就在那里
但当时的项目并没有为白炽灯设置可传递的依赖项
确保这一点的最简单方法是打开jar(你可以通过lein-cp
)并查看一下
此时,您可能只想将incater作为依赖项添加到您的项目中。谢谢!可能项目已过时,但即使在将依赖项添加到Incater后也无法使其正常工作。请将您的更改和新错误添加到问题中。通过从头开始新项目,最终错误得以清除。请为最后一个错误添加完整的stacktrace。@cfrick刚刚添加。
[clojure-complete "0.2.5" :exclusions [[org.clojure/clojure]]]
[distributions "0.1.2"]
[net.mikera/core.matrix "0.57.0"]
[org.clojure/tools.macro "0.1.5"]
[net.mikera/vectorz-clj "0.45.0"]
[net.mikera/clojure-utils "0.7.0"]
[net.mikera/vectorz "0.63.0"]
[net.mikera/mathz "0.3.0"]
[net.mikera/randomz "0.3.0"]
[us.bpsm/edn-java "0.4.6"]
[org.apache.commons/commons-math3 "3.6.1"]
[nrepl "0.7.0" :exclusions [[org.clojure/clojure]]]
[org.clojure/clojure "1.10.1"]
[org.clojure/core.specs.alpha "0.2.44"]
[org.clojure/spec.alpha "0.2.176"]
:dependencies [[org.clojure/clojure "1.10.1"]
[distributions "0.1.2"]
[incanter/incanter-charts "1.9.3"]]
Syntax error (ClassNotFoundException) compiling at (bid_simulator/core.clj:2:3).
distributions.core
:clojure.main/message
"Syntax error (ClassNotFoundException) compiling at (bid_simulator/core.clj:2:3).\ndistributions.core\n",
:clojure.main/triage
{:clojure.error/phase :compile-syntax-check,
:clojure.error/line 2,
:clojure.error/column 3,
:clojure.error/source "core.clj",
:clojure.error/path "bid_simulator/core.clj",
:clojure.error/class java.lang.ClassNotFoundException,
:clojure.error/cause "distributions.core"},
:clojure.main/trace
{:via
[{:type clojure.lang.Compiler$CompilerException,
:message "Syntax error compiling at (bid_simulator/core.clj:2:3).",
:data
{:clojure.error/phase :compile-syntax-check,
:clojure.error/line 2,
:clojure.error/column 3,
:clojure.error/source "bid_simulator/core.clj"},
:at [clojure.lang.Compiler analyze "Compiler.java" 6808]}
{:type java.lang.ClassNotFoundException,
:message "distributions.core",
:at
[java.net.URLClassLoader findClass "URLClassLoader.java" 435]}],
:trace
[[java.net.URLClassLoader findClass "URLClassLoader.java" 435]
[clojure.lang.DynamicClassLoader
findClass
"DynamicClassLoader.java"
69]
[java.lang.ClassLoader loadClass "ClassLoader.java" 589]
[clojure.lang.DynamicClassLoader
loadClass
"DynamicClassLoader.java"
77]
[java.lang.ClassLoader loadClass "ClassLoader.java" 522]
[java.lang.Class forName0 "Class.java" -2]
[java.lang.Class forName "Class.java" 427]
[clojure.lang.RT classForName "RT.java" 2211]
[clojure.lang.RT classForName "RT.java" 2220]
[clojure.lang.Compiler resolveIn "Compiler.java" 7395]
[clojure.lang.Compiler resolve "Compiler.java" 7358]
[clojure.lang.Compiler analyzeSymbol "Compiler.java" 7319]
[clojure.lang.Compiler analyze "Compiler.java" 6768]
[clojure.lang.Compiler analyze "Compiler.java" 6745]
[clojure.lang.Compiler$VectorExpr parse "Compiler.java" 3260]
[clojure.lang.Compiler analyze "Compiler.java" 6791]
[clojure.lang.Compiler analyze "Compiler.java" 6745]
[clojure.lang.Compiler$InvokeExpr parse "Compiler.java" 3881]
[clojure.lang.Compiler analyzeSeq "Compiler.java" 7109]
[clojure.lang.Compiler analyze "Compiler.java" 6789]
[clojure.lang.Compiler analyze "Compiler.java" 6745]
[clojure.lang.Compiler$BodyExpr$Parser parse "Compiler.java" 6120]
[clojure.lang.Compiler$FnMethod parse "Compiler.java" 5467]
[clojure.lang.Compiler$FnExpr parse "Compiler.java" 4029]
[clojure.lang.Compiler analyzeSeq "Compiler.java" 7105]
[clojure.lang.Compiler analyze "Compiler.java" 6789]
[clojure.lang.Compiler eval "Compiler.java" 7174]
[clojure.lang.Compiler load "Compiler.java" 7636]
[clojure.lang.RT loadResourceScript "RT.java" 381]
[clojure.lang.RT loadResourceScript "RT.java" 372]
[clojure.lang.RT load "RT.java" 459]
[clojure.lang.RT load "RT.java" 424]
[clojure.core$load$fn__6839 invoke "core.clj" 6126]
[clojure.core$load invokeStatic "core.clj" 6125]
[clojure.core$load doInvoke "core.clj" 6109]
[clojure.lang.RestFn invoke "RestFn.java" 408]
[clojure.core$load_one invokeStatic "core.clj" 5908]
[clojure.core$load_one invoke "core.clj" 5903]
[clojure.core$load_lib$fn__6780 invoke "core.clj" 5948]
[clojure.core$load_lib invokeStatic "core.clj" 5947]
[clojure.core$load_lib doInvoke "core.clj" 5928]
[clojure.lang.RestFn applyTo "RestFn.java" 142]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$load_libs invokeStatic "core.clj" 5985]
[clojure.core$load_libs doInvoke "core.clj" 5969]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.core$require invokeStatic "core.clj" 6007]
[clojure.core$require doInvoke "core.clj" 6007]
[clojure.lang.RestFn invoke "RestFn.java" 408]
[user$eval140$fn__144 invoke "form-init1507618823433517384.clj" 1]
[user$eval140 invokeStatic "form-init1507618823433517384.clj" 1]
[user$eval140 invoke "form-init1507618823433517384.clj" 1]
[clojure.lang.Compiler eval "Compiler.java" 7177]
[clojure.lang.Compiler eval "Compiler.java" 7167]
[clojure.lang.Compiler load "Compiler.java" 7636]
[clojure.lang.Compiler loadFile "Compiler.java" 7574]
[clojure.main$load_script invokeStatic "main.clj" 475]
[clojure.main$init_opt invokeStatic "main.clj" 477]
[clojure.main$init_opt invoke "main.clj" 477]
[clojure.main$initialize invokeStatic "main.clj" 508]
[clojure.main$null_opt invokeStatic "main.clj" 542]
[clojure.main$null_opt invoke "main.clj" 539]
[clojure.main$main invokeStatic "main.clj" 664]
[clojure.main$main doInvoke "main.clj" 616]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.lang.Var applyTo "Var.java" 705]
[clojure.main main "main.java" 40]],
:cause "distributions.core",
:phase :compile-syntax-check}}