我看到的每个地方都建议我在:dependencies
中添加project.clj
并运行lein deps
。这些下载在哪里?什么是我的CLASSPATH
以及如何将我自己的JAR添加到我的clojure项目中?
答案为
使用leiningen在maven本地存储库中的依赖性
有点解决了我的需要,我没有把它标记为重复,因为我要求的更简单(作为一个初学者,没有多少Java经验来了解Maven)。我仍然发现很难理解clojure结束的地方和leiningen的开始。
我正在寻找的是像大多数其他语言一样添加库的方法(例如将JAR复制到项目目录并导入代码)。
答案 0 :(得分:5)
这是一个很好的问题,因为它根本不清楚。 Leiningen通常是一个黑洞,如果某些东西不起作用,通常很难调试。
我最近不得不做一些手动编写脚本,leiningen确实可以帮助你找到这些东西。
这些是在哪里下载的?
目录位于$HOME/.m2
。这是Maven的:http://maven.apache.org/settings.html
我的课程路径是什么?
根据您的:dependencies
以及:source-paths
和:resource-paths
向量设置类路径。
你可以找到你的类路径:
lein classpath
根据您的配置,这将打印一个巨大的列表。
你可以 - 例如 - 然后运行一个脚本:
java -cp cljs-1.7.xx.jar:scripts:$(lein with-profile +dev-cljs classpath) clojure.main scripts/cljs-build.clj dev
可以访问所有项目依赖项并正确加载它们。
虽然您可以使用lein run
来实现类似的目标:
lein with-profile +dev-cljs run -m clojure.main scripts/cljs-build.clj dev
如何添加自己的JAR?
答案 1 :(得分:0)
从您图书馆的项目目录中运行lein install
。
在客户:dependencies
中向project.clj
添加条目。
确保lib名称/版本及其引用匹配(例如[mylib "0.0.1-SNAPSHOT"]
)。
希望这有帮助,暂时忘记jar loc和cp。