首页 > 解决方案 > 语法错误 (FileNotFoundException) 无法在类路径上找到 [name].class、[name].clj 或 [name].cljc

问题描述

与 Leiningen 合作的 clojure 项目的错误消息。无法让它真正拿起这个图书馆。每次我运行“lein deps”时,它都会暂停一秒钟,然后在返回之前什么也不输出。这几乎是一个骨干项目。怎么了。不要害怕询问更多信息。如果我一无所获,我就不知道我错过了什么;)。

核心.clj:

(ns file-name.core
  (:gen-class)
  (:use [dimovich.roll]))

(defn -main
 "I don't do a whole lot ... yet."
[& args]
(println "Hello, World!")
)

项目.clj:

(defproject file-name "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0"
            :url "https://www.eclipse.org/legal/epl-2.0/"}
  :dependencies [[org.clojure/clojure "1.10.1"]
                 [dimovich/roll "0.3.2"]]
  :main ^:skip-aot hospital-price-site.core
  :target-path "target/%s"
  :profiles {:uberjar {:aot :all
                       :jvm-opts ["-Dclojure.compiler.direct-linking=true"]}})

标签: clojuredependencieslibrariesleiningenprerequisites

解决方案


没有这样的命名空间dimovich.roll:命名空间与 maven 坐标不同。观察https://github.com/dimovich/roll/tree/master/src/clj/roll中的文件。要使用库中的函数,您需要知道它所在的位置,并加载适当的命名空间。


推荐阅读