如何在leiningen项目中添加not-maven兼容的jar文件?

时间:2013-06-23 08:44:30

标签: maven clojure leiningen

我正在尝试将artemis添加为我的clojure应用程序的依赖项。但它没有pom文件。因此无论是否有lein-localrepo,我都无法将其安装到我的本地仓库。目前我将artemis jar文件保存到lib/。如何在我的项目中提供它?

$ lein localrepo install -r repo/ lib/artemis-a609b2076aacc0ef5ecf0b390205d01bb88ceae2.jar com.artemis/artemis a609b2076aacc0ef5ecf0b390205d01bb88ceae2
$ lein trampoline run Retrieving com/artemis/artemis/a609b2076aacc0ef5ecf0b390205d01bb88ceae2/artemis-a609b2076aacc0ef5ecf0b390205d01bb88ceae2.pom from lib
Could not transfer artifact com.artemis:artemis:pom:a609b2076aacc0ef5ecf0b390205d01bb88ceae2 from/to lib (file:repo): no supported algorithms found
This could be due to a typo in :dependencies or network issues.

lein-localrepo不会生成pom文件:

$ ls -1 repo/com/artemis/artemis/
a609b2076aacc0ef5ecf0b390205d01bb88ceae2
maven-metadata-local.xml

以下是我project.clj的相关行:

:dependencies [[org.clojure/clojure "1.5.1"]
               [com.artemis/artemis "a609b2076aacc0ef5ecf0b390205d01bb88ceae2"]]
:plugins [[lein-localrepo "0.5.0"]]
:repositories {"lib" "file:repo"}  

我没有在这个项目中使用eclipse。

1 个答案:

答案 0 :(得分:3)

您始终可以将jar添加到本地maven存储库

Guide to installing 3rd party JARs

即使没有可用的pom。您只需提供一些信息,如groupID,版本和工件名称。

完成此操作后,您可以像使用任何其他maven依赖项一样使用它。

否则你可能会看一下“Leiningen and lein-localrepo: How to create local maven repository for jar files”,它描述了netty的类似问题以及如何使用lein-localrepo解决它。