初始化VM java.lang.NullPointerException时发生jdk-14.0.1错误
我在我的计算机上安装了jdk-14.0.1,当我给出 命令初始化VM java.lang.NullPointerException时发生jdk-14.0.1错误,java,virtual-machine,java-14,Java,Virtual Machine,Java 14,我在我的计算机上安装了jdk-14.0.1,当我给出 命令java或java-version给出以下异常 Error occurred during initialization of VM java.lang.NullPointerException at java.lang.System.getProperty(java.base/System.java:850) at sun.security.action.GetPropertyAction.privile
java
或java-version
给出以下异常
Error occurred during initialization of VM
java.lang.NullPointerException
at java.lang.System.getProperty(java.base/System.java:850)
at sun.security.action.GetPropertyAction.privilegedGetProperty(java.base/GetPropertyAction.java:105)
at java.nio.charset.Charset.defaultCharset(java.base/Charset.java:605)
at java.lang.StringCoding.decode(java.base/StringCoding.java:329)
at java.lang.String.<init>(java.base/String.java:610)
at java.lang.String.<init>(java.base/String.java:632)
at jdk.internal.util.SystemProps$Raw.vmProperties(java.base/Native Method)
at jdk.internal.util.SystemProps$Raw.cmdProperties(java.base/SystemProps.java:253)
at jdk.internal.util.SystemProps.initProperties(java.base/SystemProps.java:55)
at java.lang.System.initPhase1(java.base/System.java:2002)
初始化VM期间发生错误
java.lang.NullPointerException
位于java.lang.System.getProperty(java.base/System.java:850)
位于sun.security.action.GetPropertyAction.privilegedGetProperty(java.base/GetPropertyAction.java:105)
位于java.nio.charset.charset.defaultCharset(java.base/charset.java:605)
在java.lang.StringCoding.decode(java.base/StringCoding.java:329)
位于java.lang.String。(java.base/String.java:610)
位于java.lang.String。(java.base/String.java:632)
位于jdk.internal.util.SystemProps$Raw.vmProperties(java.base/Native方法)
位于jdk.internal.util.SystemProps$Raw.cmdProperties(java.base/SystemProps.java:253)
位于jdk.internal.util.SystemProps.initProperties(java.base/SystemProps.java:55)
位于java.lang.System.initPhase1(java.base/System.java:2002)
我的系统配置如下-
如果您将默认区域设置设置为代码页65001-UTF-8,则可能发生这种情况 要在Windows 10上“修复”此问题,请执行以下操作:
- 打开控制面板
- 选择“区域”
- 转到“管理”选项卡
- 单击“更改系统区域设置”按钮
- 取消选中“Beta:使用Unicode UTF-8获得全球支持”
- 保存。您应该会得到重新启动计算机的提示。那样做
*但是,不应该这样做。如果您将默认区域设置设置为代码页65001-UTF-8,则可能发生这种情况 要在Windows 10上“修复”此问题,请执行以下操作:
- 打开控制面板
- 选择“区域”
- 转到“管理”选项卡
- 单击“更改系统区域设置”按钮
- 取消选中“Beta:使用Unicode UTF-8获得全球支持”
- 保存。您应该会得到重新启动计算机的提示。那样做
*但是,不应该这样做。针对windows 10的解决方案: 打开命令提示符(CMD)
针对windows 10的解决方案: 打开命令提示符(CMD)
对于那些代码页不是65001但却遇到同样问题的人来说。建议试试OpenJDK14。这对我很有用。对于那些代码页不是65001但遇到同样问题的人来说。建议试试OpenJDK14。它适合我。您使用什么语言、代码页等?命令行上的
chcp
的输出是什么?自从恢复windows以来,我一直面临这个问题。我猜java在创建虚拟机的过程中无法获取系统的属性。chcp命令的输出是:activecodepage:65001Thanks,这在某种程度上是意料之中的。您应该能够通过进入控制面板->区域->管理选项卡->更改系统区域设置->取消选中“Beta:使用Unicode UTF-8获得全球支持”来解决此问题。之后,重新启动系统。让我知道这是否解决了问题。您使用什么语言、代码页等?命令行上的chcp
的输出是什么?自从恢复windows以来,我一直面临这个问题。我猜java在创建虚拟机的过程中无法获取系统的属性。chcp命令的输出是:activecodepage:65001Thanks,这在某种程度上是意料之中的。您应该能够通过进入控制面板->区域->管理选项卡->更改系统区域设置->取消选中“Beta:使用Unicode UTF-8获得全球支持”来解决此问题。之后,重新启动系统。让我知道这是否解决了它。