lancer le 1.12.2.jar sans passer par le launcher officiel
-
Bonjour, j’aimerai savoir comment lancer le 1.12.2.jar (qui se trouve dans
%APPDATA\%\\.minecraft\\versions\\1.12.2
) SANS passer par le launcher de base (car comme je le rappelle pour ceux qui n’ont pas essayé avec l’invite de commande, ça met que la classenet.minecraft.client.main
est introuvable)
en fait je cherche à créer un launcher custom pour mon serveur quelqu’un a une idée ?
j’ai juste entendu dire qu’unMain.class
se trouvait dans le launcher.exe (à la base, avant d’être compilé) -
Bonsoir,
C’estnet.minecraft.client.main.Main
le chemin de la main classe complète.
Et il se trouve bien dans le jar 1.12.2.
Par contre pour le lancer, il faut également ajouter toutes les bibliothèques nécessaires dans le classpath. -
@robin4002 le classpath c’est le fichier *.mf dans le META-INF ?
-
Non, c’est un chemin contenant l’ensemble des bibliothèques à utiliser. Il peut être précisé en utilisant l’argument
-cp
de la commande java. Le launcher de minecraft le génère à la volé par partir du contenu du fichier 1.12.2.json. -
en fait le problème est que la JVM cherche un
net.minecraft.clien.Main
dans le MANIFEST.mf mais ce fichier est inexistant
il n’y a quenet.miencraft.client.main.Main
qui n’est pas montré comme étant uneMain-Class
dans le manifeste
donc à moins que le fichierMain.class
ne soit généré avec le*.json
(comme tu le dis) je ne vois pas comment le launcher trouve la classeMain
-
sinon pour la commande
cp
je ne connais pas les arguments, et je ne vois pas comment créer les bibliothèques avec le json (oui en java j’y connais rien sur les arguments JVM je sais juste dev) -
Ce message a été supprimé ! -
cp n’est pas une commande mais un argument de la commande Java (il faut lire ce que j’écris …)
java -cp fichier1.jar;fichier2.jar chemin.de.la.MainClass
-
et donc le
fichier2.jar
c’est le fichier contenant toutes les bibliothèques ?
si j’ai bien compris
sinon merci -
Il n’y a pas de fichier contenant toutes les libs, il faut ajouter chaque lib à la suite.
Voila la commande java qu’utilise le launcher pour lancer Minecraft 1.12.2 avec forge chez moi :
java -Dos.name=Windows 10 -Dos.version=10.0 -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Djava.library.path=C:\Users\robin\AppData\Roaming\.minecraft\bin\79fe-d492-a754-835b -Dminecraft.launcher.brand=minecraft-launcher -Dminecraft.launcher.version=2.1.17628 -Dminecraft.client.jar=C:\Users\robin\AppData\Roaming\.minecraft\versions\1.12.2\1.12.2.jar -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -cp C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\minecraftforge\forge\1.12.2-14.23.5.2823\forge-1.12.2-14.23.5.2823.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\minecraft\launchwrapper\1.12\launchwrapper-1.12.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\ow2\asm\asm-all\5.2\asm-all-5.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\jline\jline\3.5.1\jline-3.5.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\java\dev\jna\jna\4.4.0\jna-4.4.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\typesafe\akka\akka-actor_2.11\2.3.3\akka-actor_2.11-2.3.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\typesafe\config\1.2.1\config-1.2.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-actors-migration_2.11\1.1.0\scala-actors-migration_2.11-1.1.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-compiler\2.11.1\scala-compiler-2.11.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\plugins\scala-continuations-library_2.11\1.0.2\scala-continuations-library_2.11-1.0.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\plugins\scala-continuations-plugin_2.11.1\1.0.2\scala-continuations-plugin_2.11.1-1.0.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-library\2.11.1\scala-library-2.11.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-parser-combinators_2.11\1.0.1\scala-parser-combinators_2.11-1.0.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-reflect\2.11.1\scala-reflect-2.11.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-swing_2.11\1.0.1\scala-swing_2.11-1.0.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\scala-lang\scala-xml_2.11\1.0.2\scala-xml_2.11-1.0.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\lzma\lzma\0.0.1\lzma-0.0.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\sf\jopt-simple\jopt-simple\5.0.3\jopt-simple-5.0.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\java3d\vecmath\1.5.2\vecmath-1.5.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\sf\trove4j\trove4j\3.0.3\trove4j-3.0.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\maven\maven-artifact\3.5.3\maven-artifact-3.5.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\mojang\patchy\1.1\patchy-1.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\oshi-project\oshi-core\1.1\oshi-core-1.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\java\dev\jna\jna\4.4.0\jna-4.4.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\java\dev\jna\platform\3.4.0\platform-3.4.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\ibm\icu\icu4j-core-mojang\51.2\icu4j-core-mojang-51.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\sf\jopt-simple\jopt-simple\5.0.3\jopt-simple-5.0.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\paulscode\codecjorbis\20101023\codecjorbis-20101023.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\paulscode\codecwav\20101023\codecwav-20101023.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\paulscode\libraryjavasound\20101123\libraryjavasound-20101123.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\paulscode\librarylwjglopenal\20100824\librarylwjglopenal-20100824.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\paulscode\soundsystem\20120107\soundsystem-20120107.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\io\netty\netty-all\4.1.9.Final\netty-all-4.1.9.Final.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\google\guava\guava\21.0\guava-21.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\commons\commons-lang3\3.5\commons-lang3-3.5.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\commons-io\commons-io\2.5\commons-io-2.5.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\commons-codec\commons-codec\1.10\commons-codec-1.10.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\java\jinput\jinput\2.0.5\jinput-2.0.5.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\net\java\jutils\jutils\1.0.0\jutils-1.0.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\google\code\gson\gson\2.8.0\gson-2.8.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\mojang\authlib\1.5.25\authlib-1.5.25.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\mojang\realms\1.10.22\realms-1.10.22.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\commons\commons-compress\1.8.1\commons-compress-1.8.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\httpcomponents\httpclient\4.3.3\httpclient-4.3.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\commons-logging\commons-logging\1.1.3\commons-logging-1.1.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\httpcomponents\httpcore\4.3.2\httpcore-4.3.2.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\it\unimi\dsi\fastutil\7.1.0\fastutil-7.1.0.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\logging\log4j\log4j-api\2.8.1\log4j-api-2.8.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\apache\logging\log4j\log4j-core\2.8.1\log4j-core-2.8.1.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl\lwjgl\2.9.4-nightly-20150209\lwjgl-2.9.4-nightly-20150209.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\org\lwjgl\lwjgl\lwjgl_util\2.9.4-nightly-20150209\lwjgl_util-2.9.4-nightly-20150209.jar;C:\Users\robin\AppData\Roaming\.minecraft\libraries\com\mojang\text2speech\1.10.3\text2speech-1.10.3.jar;C:\Users\robin\AppData\Roaming\.minecraft\versions\1.12.2\1.12.2.jar net.minecraft.launchwrapper.Launch
-
Ce message a été supprimé ! -
le problème c’est que les librairies ne se trouvent pas dans mon dossier
bin
de.minecraft
, comme celle-là :79fe-d492-a754-835b
, donc moncmd.exe
me dit qu’il ne trouve pas la classe principale…
et juste pour savoir on les trouve comment les arguments que tu m’as donnés (parce que dans la configuration de ma versionforge 1.12.2
on voit juste-Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
, qui ne sont pas les argumentsclasspath
) ? -
Ils sont dans le fichier
launcher_log.txt
après avoir lancé le jeu. -
ah ok merci ^^
-
alors en fait petit problème avec la commande
-D os.name=Windows 10
:Error: Could not find or load main class os.name=Windows Caused by: java.lang.ClassNotFoundException: os.name=Windows
je ne comprends pas trop pourquoi alors que minecraft arrive très bien à le lancer
-
ah j’ai “réussi” à lancer un programme avec la commande (dans un
*.bat
), mais ça m’affiche un message d’erreur, comme quoi on ne pourrait pas convertirClassLoaders$AppClassLoader
enURLClassLoader
:Exception in thread "main" 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)
mais ça m’étonnerait que Mojang ait fait une erreur dans son code
-
Forge 1.12.2 ne peut pas être lancé avec Java 11. C’est java 8 maximum.
-
@baztoul76 a dit dans lancer le 1.12.2.jar sans passer par le launcher officiel :
mais ça m’étonnerait que Mojang ait fait une erreur dans son code
Bah … En faite si il y en à pleins d’erreurs et de bêtises :')
Mais pas au lancement en effet puisque cela fonctionne
Comme dit robin c’est pas le bon Java avec lequel tu travails -
ah ok…
bah merci pour tout je re-re-regarde si ça marche -
Unable to launch java.lang.ClassNotFoundException: net.minecraft.client.Minecraft at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_261] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_261] at java.lang.Class.forName0(Native Method) ~[?:1.8.0_261] at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_261] at net.minecraft.launchwrapper.Launch.launch(Launch.java:131) [launchwrapper-1.12.jar:?] at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?] Caused by: java.lang.NullPointerException at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
j’ai essayé avec jre 1.8.0 261 mais ça ne marche toujours pas…
donc je vais essayer avec jdk 8 je pense