2024 年 Clojure 调查问卷! 中分享您的想法。

欢迎!请查看 关于 页面以了解更多关于如何使用本站的信息。

0
Clojure CLI

我正在尝试使用包含多个依赖项的 Clojure 项目,并将所有内容放入单个文件夹中。这么做的原因是因为我最终将在不允许多修改主文件夹的环境下构建这个软件。

正在使用的以下命令
GITLIBS=/var/build/software/.gitlibs clojure -Srepro -Sdeps '{:mvn/local-repo "/var/build/software/.m2/repository"}' -T:build uber-aot

tools.deps 能够将所有依赖项下载到指定的本地仓库中。一旦轮到 tools.build 运行,我在调用 b/create-basis 的过程中似乎遇到了错误。以下是错误的模样。

执行错误 (FileNotFoundException) at java.io.RandomAccessFile/open0 (RandomAccessFile.java:-2). /home/user/.m2/repository/org/clojure/clojure/1.11.1/clojure-1.11.1.pom.part.lock (没有找到该文件或目录)

是否有方法可以向 tools.build 传递本地 Maven 仓库?最好是在命令行中。

1 个答案

0

已选中
 
最佳答案

在调用 create-basis 时,您可以使用 :extra 键传递相当于 -Sdeps 的内容。

(create-basis  {:extra {:mvn/local-repo "your/path"}})

文档
https://clojure.github.io/tools.build/clojure.tools.build.api.html#var-create-basis

...