当尝试使用与gen-class的依赖关系的类时,Lein install / uberjar失败

时间:2016-03-07 15:21:40

标签: java clojure interop classnotfoundexception gen-class

当我使用来自二阶依赖关系的类时获取ClassNotFoundException。当我运行lein uberjar或安装它失败

java.lang.ClassNotFoundException: incanter.core.Dataset, compiling:(myproject/routes/evaluate.clj:1:1). 

然而,它被编译。

Exception in thread "main" java.lang.ClassNotFoundException: incanter.core.Dataset, compiling:(myproject/routes/evaluate.clj:1:1)
        at clojure.lang.Compiler.analyzeSeq(Compiler.java:6730)
        at clojure.lang.Compiler.analyze(Compiler.java:6524)
        at clojure.lang.Compiler.analyze(Compiler.java:6485)
        at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5861)
        at clojure.lang.Compiler$TryExpr$Parser.parse(Compiler.java:2261)
        at clojure.lang.Compiler.analyzeSeq(Compiler.java:6723)
        at clojure.lang.Compiler.analyze(Compiler.java:6524)

我的project.clj文件(选定部分)

(defproject myproject"0.2.2-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.7.0"]
               [grafter "0.7.0"]]
)

incanter.core.Dataset由grafter使用:0.7.0。

我使用它的clojure文件是 的myproject /路由/ evaluate.clj

(ns myproject.routes.evaluate
(:gen-class
    :name myproject.routes.evaluate
    :prefix "service-"
    :methods [^:static [executePipeline [java.lang.String java.lang.String java.lang.String] incanter.core.Dataset]]))

(defn service-executePipeline [data command pipeline]   
  (execute-pipeline data command pipeline))

我已经完成了几个与gen-classaot解决方案相关的帖子。什么都没有用。 我对Clojure很安静。我不完全确定发生了什么。 我可以解决这个问题吗?我做错了什么?

0 个答案:

没有答案