java 14 nullpointerException没有详细消息

2024-03-23

Java 14 有许多新特性。其中之一是在 NullPointerException 中显示详细消息。我安装了 Java 14 并尝试在类下编译和运行,但没有收到任何详细消息。我错过了什么吗?请帮忙。

~/code/demo/temp$ java -version
openjdk version "14" 2020-03-17
OpenJDK Runtime Environment AdoptOpenJDK (build 14+36)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.19.0, JRE 14 Mac OS X amd64-64-Bit Compressed          References 20200313_47 (JIT enabled, AOT enabled)
OpenJ9   - 0133ba037
OMR      - 1c04e0ef9
JCL      - a73be60649 based on jdk-14+36)

~/code/demo/temp$ cat Hello.java
public class Hello {
  public static void main(String args[]) {
    String a = null;
    System.out.println(a.length());
  }
}

~/code/demo/temp$ javac Hello.java
~/code/demo/temp$ java -XX:+ShowCodeDetailsInExceptionMessages Hello
Exception in thread "main" java.lang.NullPointerException
at Hello.main(Hello.java:4)

我将建议的 -XX:+ShowCodeDetailsInExceptionMessages 标志传递给 java,但没有详细消息。请帮忙。


目前OpenJ9不支持 JEP 358 https://www.eclipse.org/openj9/docs/version0.19/#extended-messages-for-nullpointerexception-not-yet-implemented:

扩展消息NullPointerException尚未实现

JEP 358:有用的 NullPointerExceptions https://openjdk.java.net/jeps/358提供扩展消息时NullPointerException由 Java 14 VM 生成,并且您已启用该功能。但请注意,目前 OpenJ9 中尚未实现此功能。

进度跟踪在this bug https://github.com/eclipse/openj9/issues/8450

如果您想使用此功能,请从acceptopenjdk下载热点变体。它与您当前的发行版是同一供应商,因此这只是一个很小的变化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java 14 nullpointerException没有详细消息 的相关文章

随机推荐