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

欢迎!请参阅关于页面了解更多关于此工作的相关信息。

+4
Clojure

我还没有设法试用Graalvm,但是作为Clojure用户,问题是,考虑到Graalvm的承诺,Clojure与它的集成存在哪些问题(如果有),与Graalvm的上游集成的看法如何?在技术和其他方面(我提出这个问题是为了跟踪未来的用户)

2 个答案

+3

我已创建了一些使用Clojure和GraalVM的app

https://github.com/borkdude/clj-kondo
https://github.com/borkdude/babashka
https://github.com/borkdude/jet

您可以检查这些,看看现在可能性和无法实现的事情。

它们与1.10.1一起工作良好,但有一个限制,那就是您不能要求clojure.spec.alpha或clojure.pprint,因为那样的话您会遇到https://clojure.atlassian.net/browse/CLJ-1472。在1.9.0中,这个问题不存在,但我希望在最新的Clojure版本上。

我发现工作得很好是:使用leiningen将源代码AOT到uberjar中,然后将该.jar提供给GraalVM。我现在在所有的GraalVM项目中都这样做了。

值得一提的是,https://clojure.atlassian.net/browse/CLJ-1472 已在1.10.1版本中修复,我认为是这样的!
+1

我认为目前如果您想使用native-image将GraalVM生成本地二进制文件,则需要降级到Clojure 1.9.0(除非自从我尝试以来这个问题已被修复)

)
您好,

以下是使用GraalVM和Clojure的一个示例。

https://github.com/taylorwood/clojurl

希望有所帮助!
这是个很酷的示例,我正试图构建一个用于管理我的书籍的命令行应用程序,我对启动时间感到非常沮丧。我尝试了GraalVM,但在当时我无法正确地让HTTPS工作,因为我需要调用Goodreads和Amazon API。感谢这个示例,我很快会回到这个项目上。
...