leiningen-如何为本地jar添加依赖项?
我想使用Leiningen来构建和开发Clojure项目。有没有办法修改project.clj告诉它从本地目录中选择一些jar?
我有一些专有的jar,无法上传到公共存储库。
另外,可以使用leiningen维护clojure项目的“ lib”目录吗?如果我的一堆clojure项目共享相同的jar,我不想为每个jar保留一个单独的副本。
谢谢
回答:
你可以将你的私人jar放进lib/
去,出于lein swank
诸如此类的目的,它们会放在类路径中;这似乎确实使使用依赖项管理工具的意义落空了,尽管如果你实际上不希望管理那些依赖项,则可以将Leiningen视为“开放源代码依赖项管理工具”,并且可能要当心lein clean
。
随着情况变得更加复杂-涉及到更多的私有jar,它们在发展,并且你需要考虑一些版本信息-Arthur创建私有Maven回购的想法可能更合适。
(HR表示特定于Leiningen的零件截止点…继续下面以获取Clojure领域中一般的构建/依赖管理工具故事的信息,包括一些我认为可能对你有用的链接。)
此外,到目前为止,关于哪一个是Clojure的最佳构建工具这一问题尚未达成共识,并且Leiningen在赢得广泛关注的同时,也在不断地在功能和抛光方面获得收益-特别是,这意味着尚未完成。这是语用书架的“ Programming Clojure”一书的作者Stuart Halloway的话:“我的2c:Leiningen是重要的一步,但仍有许多工作要做。” 有关完整的发布和非常有趣的讨论,请参见Leiningen,Clojure和库:在Clojure空间中构建工具等,我想念的是什么?Clojure Google网上论坛上的主题。许多参与者特别提到需要使本地依赖项不包含在任何存储库中,无论是本地存储库还是其他存储库,并详细说明他们针对此类情况提出的解决方案。也许你可以看到那里是否有什么现在可以解决你的问题/将来在功能集成熟时可以解决?
无论如何,Leiningen实际上可能还没有为某些复杂情况准备好故事。如果你认为这对你的情况是正确的(并且我的意思是在考虑了私有回购想法之后),那么这里有一些指向上述线程中基于maven的替代方法的链接:polyglot maven,clojure-maven-plugin;此博客发布旨在对试图与Clojure一起使用Maven的人有用。我记得,梅克尔·布兰德迈尔(Meikel Brandmeyer)也在Gradle(一种Groovy构建系统)的支持下使用Gradle(一种Groovy构建系统)来容纳名为Clojuresque的Clojure。我从来没有亲自尝试过,因为不了解Groovy的第一件事,但是他声称要与它做一个非常好的建筑行为,我相信这与Maven无关-这本身就是一个优点。对于我们中的一些人。:-)
以上是 leiningen-如何为本地jar添加依赖项? 的全部内容, 来源链接: utcz.com/qa/408888.html