Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure/Leiningen-将jar资源打包到Clojar中_Clojure_Leiningen_Clojars - Fatal编程技术网

Clojure/Leiningen-将jar资源打包到Clojar中

Clojure/Leiningen-将jar资源打包到Clojar中,clojure,leiningen,clojars,Clojure,Leiningen,Clojars,我有一个类似的问题 我使用leindeploy将一个小项目推到clojars中。该项目依赖于一个jar依赖项,我只是将它放在本地驱动器上的一个文件夹中,并导入到我的:资源路径中,如下所示: (defproject cljblpapiwrapper "0.1.0-SNAPSHOT" :description "" :url "" :license {:name "" :url ""} :dependencies [[org.clojure/clojure "1.9.0"]] :

我有一个类似的问题

我使用
leindeploy
将一个小项目推到clojars中。该项目依赖于一个jar依赖项,我只是将它放在本地驱动器上的一个文件夹中,并导入到我的
:资源路径中,如下所示:

(defproject cljblpapiwrapper "0.1.0-SNAPSHOT"
  :description ""
  :url ""
  :license {:name "" :url ""}
  :dependencies [[org.clojure/clojure "1.9.0"]]
  :resource-paths ["resources/blpapi-3.8.8-2.jar"]
  :repl-options {:init-ns cljblpapiwrapper.core})
现在,在另一个项目中导入我部署的clojars repo时,它无法在jar repo中找到类。我得到了这个线索:

#error {
 :cause com.bloomberglp.blpapi.CorrelationID
 :via
 [{:type clojure.lang.Compiler$CompilerException
   :message java.lang.ClassNotFoundException: com.bloomberglp.blpapi.CorrelationID, compiling:(cljblpapiwrapper/core.clj:6:1)
   :at [clojure.lang.Compiler load Compiler.java 7526]}
  {:type java.lang.ClassNotFoundException
   :message com.bloomberglp.blpapi.CorrelationID
   :at [java.net.URLClassLoader findClass URLClassLoader.java 382]}]
 :trace
 [[java.net.URLClassLoader findClass URLClassLoader.java 382]
  [clojure.lang.DynamicClassLoader findClass DynamicClassLoader.java 69]
  [java.lang.ClassLoader loadClass ClassLoader.java 424]
  [clojure.lang.DynamicClassLoader loadClass DynamicClassLoader.java 77]
  [java.lang.ClassLoader loadClass ClassLoader.java 357]
...
在我看来,这个罐子没有送到clojars——我怎么能在回购协议中打包呢?或者,如何将其单独推送到clojars


谢谢,

你试过从clojars下载你的库吗?使用
jar
命令解压*.jar文件并查看库是否存在

看看这个回购协议:

/resources
目录中有一个jar文件:
datomic-free-0.9.5661-everything.jar

您可能需要使用
project.clj
中的语法,以使clojars上的uberjar格式正确。您可能需要在一个单独的maven兼容的repo上发布依赖项JAR文件。选择包括:

  • -由REPL播客的主机创建
  • AWS S3-这方面有很多帮助

您是否尝试从clojars下载您的库?使用
jar
命令解压*.jar文件并查看库是否存在

看看这个回购协议:

/resources
目录中有一个jar文件:
datomic-free-0.9.5661-everything.jar

您可能需要使用
project.clj
中的语法,以使clojars上的uberjar格式正确。您可能需要在一个单独的maven兼容的repo上发布依赖项JAR文件。选择包括:

  • -由REPL播客的主机创建
  • AWS S3-这方面有很多帮助

我认为您需要将jar作为依赖项绑定到您的项目中。clj,resource path告诉uber jar只包含该文件

我认为您需要将jar作为依赖项绑定到您的项目中。clj,resource path告诉uber jar只包含该文件

@AlanThompson谢谢-我解包了,图书馆就在那里(放在最上面的文件夹中,例如我提取的地方)。你知道我应该如何正确引用它吗?@AlanThompson谢谢你-我解包了,图书馆就在那里(放在最上面的文件夹中,例如我提取的地方)。你知道我应该如何正确地引用它吗?我最终使用在上找到的脚本将jar打包到clojars repo中。谢谢你的帮助,我最终用我在网站上找到的一个脚本将这个罐子打包成了clojars repo。谢谢你的帮助