lein ring uberjar--java.lang.NoClassDefFoundError:clojure/lang/Var
不确定为什么当我lein ring uberjar--java.lang.NoClassDefFoundError:clojure/lang/Var,clojure,leiningen,compojure,ring,compojure-api,Clojure,Leiningen,Compojure,Ring,Compojure Api,不确定为什么当我lein with profile+live-ring uberjar然后java-jar我的uberjar时,我得到了这个异常:java.lang.NoClassDefFoundError:clojure/lang/Var project.clj: (defproject gn-preview-api "0.1.0-SNAPSHOT" :description "FIXME: write description" :url "http://example.com/FIX
lein with profile+live-ring uberjar
然后java-jar
我的uberjar时,我得到了这个异常:java.lang.NoClassDefFoundError:clojure/lang/Var
project.clj
:
(defproject gn-preview-api "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.9.0"]]
:main gn-preview-api.www.app
:target-path "target/%s"
:profiles {:uberjar {:aot :all}
:staging {:aot :all}
:live {:aot :all}
:dev {:plugins [[lein-ring "0.9.7"]]
:dependencies [[javax.servlet/servlet-api "2.5"]]}})
有什么想法吗?莱宁根。文件名以…-standalone.jar
结尾的是实际的uberjar,它包含Clojure(核心)。只需使用java-jar my_uberjar.jar
即可运行独立文件。如果运行另一个(非uber jar),则Clojure需要在类路径中可用
您可以使用jar tf my_uberjar.jar
查看每个jar文件包含哪些依赖项。uberjar应该包含clojure/core/…
,clojure/lang/…
,等等