исключение неразрешенного элемента исходного изображения, но класс существует

#clojure #graalvm-native-image

#clojure #graalvm-native-image

Вопрос:

Когда я хочу скомпилировать приложение из файла jar с помощью native-image (graalvm версии 21.3.0, как на Java 11, так и на Java 17), я получаю следующую ошибку.

 > $GRAAL_HOME/bin/native-image --no-fallback --initialize-at-build-time -jar $JARFILE

[...]
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered 
unresolved type during parsing: clojure.lang.Compiler$Expr. To diagnose the issue 
you can use the --allow-incomplete-classpath option. The missing type is then reported 
at run time when it is accessed the first time.
[...]
 

(Если я добавлю --allow-incomplete-classpath опцию, то во время выполнения появится та же ошибка.)

Я прочитал, что это означает, что тип не может быть найден в пути к классу. Но я вижу, что файл класса уже находится в файле jar, который я пытаюсь скомпилировать:

 > jar tf uclj-0.1.0-SNAPSHOT-standalone.jar  | grep -e 'Compiler$Expr'
clojure/lang/Compiler$Expr.class
 

Чего мне здесь не хватает? Спасибо!