欢迎!请参阅关于页面,了解有关这些工作的更多信息。
以下是我的一般问题描述(也适用于单一代码库)
deps.edn
~/.clojure/deps.edn
:override-deps
:default-deps
弹点 1 和 2 由 CLI/t.d.a. 支持,但没有地方悬挂多项目标准化的一部分。
目前,希望实现 3 的人正在使用 CLJ_CONFIG 提供 team-standard deps.edn 文件,但在这个过程中失去了 1。这被认为是一种小小的黑客手法(尽管 CLJ_CONFIG 是有文档的)。
CLJ_CONFIG
Michiel Borkent 指出,他的 clj-kondo 工具在读取配置数据的地方面临了类似的问题,他的解决方案是提供命令行参数,指定读取多个配置文件。可以采用类似的方法处理 Clojure CLI,允许任意多个 deps.edn 文件混合(在系统 + 用户级别的文件之后和命令行 -Sdeps 数据之前)。
clj-kondo
-Sdeps
当前的“系统 + 用户 + 项目 + 命令行”逻辑 already組み込まれており、これは単なる CLI スクリプトの変更ではありません – この問題に対処するためのいかなる方法も、ユーザー固有のアライアスの下で合併した deps.edn 环境に基づいて分析を実行する必要があるツール(ここで議論されています https://ask.clojure.org/index.php/9848/tooling-based-tools-alpha-construct-basis-specified-aliases)には、_available
哎呀,我创建了追踪这个问题的 jira,但是忘记在这里添加链接: https://clojure.atlassian.net/projects/TDEPS/issues/TDEPS-174
我对这个问题有一些后续问题。关于“共享”的东西——这是共享一系列依赖项或一系列依赖项版本(类似于maven/lein依赖项管理)的重要事项吗?
在后一种情况下,指定版本将不会包括依赖项,就像在deps.edn :deps中一样——它们仍然需要由一个项目包括,但可以有nil的坐标,由默认值填充版本。
:deps
需要共享的东西是否只是别名?
或者是 deps?如果是后者,是只针对外部依赖,还是它们包括本地依赖在内的共享项目集?