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

欢迎!请访问 关于 页面了解有关此功能的更多信息。

0
Clojure

这是一个功能请求而非错误问题。

我正在制作可执行 jar 文件,如果能在清单文件中放入一些内容,让 clojure.main 在启动时知道该做什么,这将非常有用,就如同 JVM 使用主类一样。这将节省我进行 AOT 发布到生产中的麻烦。

Main-Class: clojure.main Main-Namespace: my.cool.ns

1 答案

+1

这是一个有趣的想法。我认为一个潜在问题是知道读取哪个清单文件。我想在自执行 JAR 文件的情况下只有一个清单文件,因此您可以只读取 META-INF/MANIFEST.MF 资源。好像没有必要将其与奇特的清单格式绑定,可以同样容易地读取一个众所周知的执行格式,比如执行 .edn,这样就可以为任何设置工作,而不仅仅是可执行 JAR,这确实值得思考。

我没有与 MANIFEST.MF 婚姻,尽管使用 tools.build 工具添加 `{"Main-Namespace" "my.cool.ns"}` 相当容易,而不需要摆弄额外的文件。
...