Closed matthewfl closed 5 months ago
This is likely to be caused by the incomplete support for class loaders in CheerpJ 2.x. This whole class of problems will be solved with the new CheerpJ 3.x architecture that is currently under development.
Please provide a self-contained JAR that demonstrate the problem, so that we can use it as a test case.
@alexp-sssup I have created a simple self-contained jar that launches clojure and causes this issue. I also included a demo page that generates the stack trace.
https://www.dropbox.com/s/pok26fyiw9v860g/cheerpj-clojure.zip?dl=1
This problem is fixed with the new CheerpJ 3.0 architecture. Please try this build: https://cjrtnc.leaningtech.com/3_20240122_347/cj3loader.js
Since cjCall
has been replaced with the new "library mode", you'll need update your code. See here for more information: https://labs.leaningtech.com/cheerpj3/guides/library-mode
I am trying to load an application that has some of its parts written in Clojure. Trying to load the Clojure runtime, I get the following error. It seems that that Clojure is internally using
Class.forName
to load some stuff and that is resulting in the following exception when it internally attempts to use Unsafe.I would have assumed that because this is running entirely compiled to webassembly, it should be possible for it to use unsafe internally.