Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubuntu Minecraft服务器java.lang.ClassCastException:class jdk.internal.loader.ClassLoaders$AppClassLoader_Java_Ubuntu_Minecraft_Minecraft Forge - Fatal编程技术网

Ubuntu Minecraft服务器java.lang.ClassCastException:class jdk.internal.loader.ClassLoaders$AppClassLoader

Ubuntu Minecraft服务器java.lang.ClassCastException:class jdk.internal.loader.ClassLoaders$AppClassLoader,java,ubuntu,minecraft,minecraft-forge,Java,Ubuntu,Minecraft,Minecraft Forge,我正在尝试运行我的改装mc服务器。它可以在wondows上运行,但当我尝试在ubuntu上运行它时,会出现以下错误: saif@Saif-Ubuntu:~/Desktop/Minecraft Server$ java -Xmx2048M -Xms2048M -jar forge-1.12.2- 14.23.5.2854.jar A problem occurred running the Server launcher.java.lang.reflect.InvocationTarge

我正在尝试运行我的改装mc服务器。它可以在wondows上运行,但当我尝试在ubuntu上运行它时,会出现以下错误:

    saif@Saif-Ubuntu:~/Desktop/Minecraft Server$ java -Xmx2048M -Xms2048M -jar forge-1.12.2- 
14.23.5.2854.jar
A problem occurred running the Server launcher.java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:70)
    at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:34)
Caused by: java.lang.ClassCastException: class jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to class java.net.URLClassLoader (jdk.internal.loader.ClassLoaders$AppClassLoader and java.net.URLClassLoader are in module java.base of loader 'bootstrap')
    at net.minecraft.launchwrapper.Launch.<init>(Launch.java:34)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    ... 6 more
saif@Saif-Ubuntu:~/Desktop/Minecraft服务器$java-Xmx2048M-Xms2048M-jarforge-1.12.2-
14.23.5.2854.jar
运行Server launcher.java.lang.reflect.InvocationTargetException时出现问题
位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
位于java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
位于java.base/java.lang.reflect.Method.invoke(Method.java:566)
位于net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:70)
位于net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:34)
原因:java.lang.ClassCastException:class jdk.internal.loader.ClassLoaders$AppClassLoader无法强制转换为class java.net.URLClassLoader(jdk.internal.loader.ClassLoader$AppClassLoader和java.net.URLClassLoader位于加载程序“引导”的模块java.base中)
在net.minecraft.launchwrapper.Launch.(Launch.java:34)
位于net.minecraft.launchwrapper.Launch.main(Launch.java:28)
... 还有6个

我试过使用jdk 11和jdk 8,但无论如何我都看不出这两种方法都不管用。有人知道我可以尝试什么吗?

当您不使用JDK 8时,会出现此问题,请再次尝试使用它,卸载JDK 11并使用
java-version
Forge检查您的JDK版本,正如我现在所知,遗憾的是,它只支持java 8开发工具包。通过键入
java--version
确保您正在运行JDK8。尝试卸载其他版本或指定应使用的版本。我建议阅读

我知道了如何在不卸载任何软件的情况下切换java版本: 'sudo更新备选方案--配置java'


感谢Joseph Sible、Novarch和Likqez将我推向了正确的方向。

我怀疑您在认为使用JDK 8时并没有实际使用JDK 8,而实际使用JDK 8会解决这个问题。