2024年Clojure状态调查!中分享您的想法。

欢迎!请查看关于页面,获取有关如何工作的更多信息。

+15
tools.deps

(链接:https://sdkman.java.net.cn 文字:SDKMAN!) 是一个用于管理多个Java和JVM SDK并行版本的工具,与rbenv或pyenv有些相似。
我希望在(链接:https://sdkman.java.net.cn/sdks 文字:支持的SDKs)中看到Clojure CLI,因为它为安装Clojure CLI和管理版本提供了备选方法。

归档文件 https://download.clojure.org/install/clojure-tools-(链接:版本).tar.gz 依赖于{{install.sh}}来复制文件并修改clj命令以具有到jar的绝对路径,但SDKMAN!需要可以仅通过解压即可安装的归档文件。
Leiningen 早就增加了支持,而(链接:https://github.com/technomancy/leiningen/issues/2204 文字:PR)将会有所帮助。

它为SDK生产者提供了(链接:https://sdkman.java.net.cn/vendors 文字:API和Gradle)插件,用于发布新版本、标记默认版本以及广播新版本。

2个答案

+5
参考:https://clojure.atlassian.net/browse/TDEPS-113(由alex+import报告)
只为了添加更多信息。

我在SDKMAN Slack频道咨询了这个问题,他们向我解释了OP提到的类似的事情。

但他们确实给了我一些关于实际需求更多细节[1]。

```
@Jesús Gómez 目前这些需求尚未文档化,但可以归结为

    * 解压后的存档应该创建一个根文件夹(例如,解压后的mvnd存档会创建一个名为mvnd-0.0.4-darwin-amd64的根文件夹)
    * 在解压后的根文件夹下,需要有一个包含可执行二进制的bin文件夹
``` - Oliver Weiler

也许没有必要更改原来的`clojure-tools-...tar.gz`,而是有一个满足这些要求的替代版本(仅针对SDKMAN,但谁知道呢?)。

[1] https://sdkman.slack.com/archives/CJK9DMV6V/p1606295345021900?thread_ts=1606242509.021200&cid=CJK9DMV6V
0 投票

实现这一目标似乎有两个步骤

存档应该包含单个顶级目录,如clojure-1.10.3.967,在其中应有一个包含可执行文件的bin目录。

欢迎对第一部分进行打补丁,对第二部分所需的持续版本维护过程有兴趣了解更多细节。
似乎是每个版本都需要这样的 PR:https://github.com/sdkman/sdkman-db-migrations/pull/539/files
有些过时,但疫情之后还有机会将其实现吗?
...