GrallVM 本机映像构建错误“java.lang.NoSuchMethodException:sun.invoke.util.ValueConversions.booleanToInt(boolean)”

问题描述 投票:0回答:1

我有一个java应用程序。该应用程序调用与 JNA 共享的库的“square”方法,并将结果打印到控制台。运行 jar 文件时一切正常,但当尝试使用“native-image”命令编译 jar 文件时,出现“致命错误:org.graalvm.compiler.debug.GraalError:com.oracle.svm.util.ReflectionUtil$ ReflectionUtilError: java.lang.NoSuchMethodException" 我收到类似 ": sun.invoke.util.ValueConversions.booleanToInt(boolean)" 的错误。当我第一次看到时,我在方法名称中看到了字母“I”。我认为错误可能就在这里,但我不知道如何修复它。

注意:jdk版本:graalvm-jdk-17.0.9

这里有一些图片:

我该如何处理这个问题?

成功构建原生镜像,但出现错误

java java-native-interface graalvm java-native-library
1个回答
0
投票

尝试在任何英语(英国、美国)语言环境中运行

native-image
,这应该可以修复错误。

接下来,您可能想要针对 GraalVM 在土耳其语言环境中无法正常工作的问题提交错误。他们这边似乎有一个错误:他们正在调用

toUpperCase
,没有区域设置参数,默认情况下使用系统定位。这在大多数情况下都有效,但在土耳其语言环境中会产生令人惊讶的结果(并且此方法的javadoc甚至讨论了这种情况)

© www.soinside.com 2019 - 2024. All rights reserved.