欢迎!有关如何使用的更多信息,请参阅关于页面。
以下是我的一般问题说明(这也适用于单一代码仓库)
deps.edn
~/.clojure/deps.edn
:override-deps
:default-deps
第1点和第2点由CLI/t.d.a.支持,但没有地方挂载多项目标准化这块。
目前,想要第3点的用户正在使用CLJ_CONFIG提供一个标准化的deps.edn文件,但在这个过程中丢失了1点。这被认为是一种权衡(虽然CLJ_CONFIG是有文档的)。
CLJ_CONFIG
Michiel Borkent指出,他的clj-kondo工具在读取配置数据方面遇到了类似问题,他的解决方案是提供一个命令行参数,该参数指定了要读取的多个配置文件。可以采用类似的方法来处理Clojure CLI,允许任意数量的deps.edn文件被合并(在系统+用户级别之后和命令行-Sdeps数据之前)。
clj-kondo
-Sdeps
当前“系统+用户+项目+命令行”逻辑已经内置到tools.deps.alpha中,所以这不仅仅是CLI脚本更改,并且任何解决此问题的方法都需要提供给那些需要在用户特定别名下根据合并的deps.edn环境进行分析的工具(如在这里所讨论的https://ask.clojure.org/index.php/9848/tooling-based-tools-alpha-construct-basis-specified-aliases)。
tools.deps.alpha
哎哟,我提交了这个jira跟踪此问题,但忘记在这里添加链接: https://clojure.atlassian.net/projects/TDEPS/issues/TDEPS-174
我想就这个问题询问一下。关于“共享”内容,是否是共享一组依赖或依赖版本(类似于 Maven/lein 的依赖管理)呢?
在后一种情况下,指定版本将不会包括依赖,如同在 `deps.edn` 的 `:deps` 中那样——依赖仍需要被项目包含,但可以只保留 nil 协定,版本由默认值填充。
需要共享的东西只有别名吗?
还是也包括deps?如果是后者,它们是否只针对外部deps,或者它们还包括共享项目的本地deps?