我如何使用 Boot (clojure) 添加 github/local 依赖项

How i can add github/local dependencies with Boot (clojure)

例如我想 fork 一些现有的 clojar,扩展它并在我的项目中使用。

我该怎么做 w/o 推送到 clojars/maven?

对两个选项都感兴趣:link 到 github 和本地路径。

谢谢!

更新

我想要的是包括一些现有的 Clojure 项目作为依赖项,类似于 ruby gem 允许。 Boot可以吗?或者我总是需要编译成 java?

正如我在 Boot 中发现的那样,您可以指定源路径:

(set-env! :source-paths   #{"src", "../clj-mailgun/src"})

这是将其他项目添加到您的 . (添加源代码,而不是 .jar)

无法指定 github link - 您应该手动克隆它并添加到 :source-paths 路径。

如有遗漏请指正

以下是我在 hoplon 的 castra-simple 示例中设置 castra 分支的方法。

https://github.com/hoplon/demos/tree/master/castra-simple

打开shell

git clone castra:repo

在 castra 目录中

文件:build.boot

; ...
(def +version+ "3.0.0-SNAPSHOT")
; ...

boot watch build-jar

开新shell

git clone castra-simple:repo

简单卡斯特

文件:boot.build

(set-env!
 :dependencies
 '[
   ;; ...
   [hoplon/castra             "3.0.0-SNAPSHOT"] ;;forked repo
   ;; ...
   ]
 :source-paths   #{"src"}
 :resource-paths #{"assets"})

;; ...

(deftask dev
  "Build castra-simple for local development."
  []
  (comp
   (serve
    :handler 'app.handler/app
    :reload true
    :port 8000)
   (watch) (speak) (hoplon) (reload) (cljs-repl) (cljs)

   ;;forked repo
   (checkout :dependencies '[[hoplon/castra "3.0.0-SNAPSHOT"]])))

boot dev