ClassCastException w trakcie uruchamiania serwera Minecraft

0

Chce postawić Serwer lecz mi coś nie wychodzi mam taki błąd.

root@minecraft:~/minecraft# ls
forge.jar  forge.jar.log  libraries  minecraft_server.1.10.2.jar  mods
root@minecraft:~/minecraft# java -Xmx3900M -Xms2046M -jar forge.jar nogui
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:62)
        at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:31)
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
root@minecraft:~/minecraft#
0

Pokaż kod 😎

0

Podejrzewam, że używasz javy 11 lub wyższej. Możesz to sprawdzić poleceniem java -version. Przepnij się na javę 8 lub wyinstaluj javę 11 i powinno zadziałać. Nie podam Ci dokładnego polecenia, bo nie wiem jaki masz system. Po logach wygląda jak linux, ale nie wiadomo jakie distro. Sam powinieneś wykombinować jak ustawić javę 8. Nie jest to trudne. Na ubuntu masz polecenie sudo update-alternatives --config java. Możesz też np. użyć toola sdkman.

0
wiciu napisał(a):

Podejrzewam, że używasz javy 11 lub wyższej. Możesz to sprawdzić poleceniem java -version. Przepnij się na javę 8 lub wyinstaluj javę 11 i powinno zadziałać.

O ile by diagnoza była słuszna *) (o grach nie wiem nic), to nie ma potrzeby wyrzynania bardziej nowoczesnych wersji Javy by uruchomić coś starszego. A na likusach to miód, zmienia się w skrypcie startowych JAVA_HOME, PATH i z niechanej Javy nie ma śladu

*) pomiedzy v. 8 a współczesnymi była v.9, ktora wprowadziła modularyzację. Na pewien czas wykładało to cześć programów, zwykle tych dużych (np niektóre IDE), ale to zostało opanowane. To już 5 lat temu, dawno.

@Devor: tę grę masz we współczesnej wersji, czy z jakiegoś archaicznego źródła?

1 użytkowników online, w tym zalogowanych: 0, gości: 1