This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-08-22
Channels
- # babashka (2)
- # beginners (81)
- # calva (5)
- # chlorine-clover (3)
- # cider (1)
- # cljsjs (1)
- # cljsrn (24)
- # clojure (67)
- # clojure-europe (3)
- # clojurescript (37)
- # code-reviews (2)
- # conjure (12)
- # core-async (4)
- # datalog (1)
- # datomic (6)
- # emacs (2)
- # figwheel-main (1)
- # graalvm (12)
- # java (4)
- # kaocha (9)
- # meander (3)
- # other-lisps (1)
- # pathom (14)
- # re-frame (2)
- # sci (32)
- # shadow-cljs (77)
- # sql (88)
- # xtdb (54)
Is it possible to build a clojure native app that doesn't have initialize-at-build-time? Stepping back I would like to use xgboost and xerial-larray, both of which have jni bindings and it appears from graalvm-native's documentation this is possible but there appear to be static initialization issues. So if there is a known example, java or otherwise, of someone using libraries that use JNI that may also help a bit.
Also, I know that there is a solid pool of documentation about using graal native with Clojure. Where are those docs?
@chris441 I have a couple of examples that use JNI. E.g. https://github.com/borkdude/clojure-rust-graalvm. https://github.com/epiccastle/spire is also one.
@chris441 As for static initialization issues: you can make exceptions for specific classes, e.g. https://github.com/babashka/babashka-sql-pods/blob/5d04e7fce699741e1b5e8488cf0a8f70843a3e2e/script/compile#L60