预测boot-clj需要构建项目的所有依赖项

时间:2017-01-02 01:11:08

标签: maven clojure nix boot-clj

通常,boot会将所有已获取的依赖项存储在本地maven存储库中,该存储库位于~/.m2/repository

将环境变量BOOT_LOCAL_REPO设置为另一个目录时,它将仅使用所选目录。

考虑一下:

boot new -n my -t app
cd my
mkdir repo
export BOOT_LOCAL_REPO=$(pwd)/repo

boot build

启动现在将获取所需的所有jar文件到本地repo文件夹。

第二次调用boot build时,将无法获取任何内容,建筑物即刻开始。

我正在开发一个从启动文件生成nix表达式的启动任务。为此,我需要预测启动构建项目所需的所有依赖项。基本上,repo文件夹的内容。 这只是部分工作:在我的启动任务中使用以下内容时获得的最佳结果:

(def dependency-jars
  (-> (boot.core/get-env)
      :boot-class-path
      (s/split #":")
      (->> (filter #(re-find #"\.m2" %)))))

我将从外部获取这些罐子并将其存储在repo文件夹中。但是,在运行引导构建时,仍然会有一些引导将获取的jar。这应该避免。例如,它发生在那些:

Retrieving oss-oparent-7.pom from https://repo1.maven.org/maven2/ (5k)
Retrieving shimdandy-parent-1.2.0.pom from https://repo1.maven.org/maven2/ (2k)
[..]

(实际上它看起来只需要poms而不是那些文件的jar)

有人知道如何识别它们吗?

0 个答案:

没有答案