Launcher Minecraft qui ne se lance pas
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Bonjour,
Je suis entrain de développer un launcher Minecraft Forge 1.16.5.
Mais dès que je lance le jeu ca ne lance pas Minecraft.
Ps: Ces écris volcanite car ces le nom du serveur que je veux créer.
Voici un enregistrement vidéo et je met le code ici.
Lien de la vidéo: https://www.youtube.com/watch?v=U1p6Sl0RVpg&feature=youtu.be
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.*; import java.net.URL; public class Main { private static final String minecraftPath = "C:\\Users\\Administrator\\AppData\\Roaming\\.minecraft"; private static final String javaPath = "C:\\Program Files\\Java\\jre-1.8\\bin\\javaw.exe"; private static final String forgeVersion = "1.16.5-forge-36.2.34"; public static void main(String[] args) { JFrame frame = new JFrame("Volcanite Launcher"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 200); frame.setLayout(new FlowLayout()); JTextField usernameField = new JTextField(20); JButton launchButton = new JButton("Lancer Volcanite"); launchButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String username = usernameField.getText(); launchMinecraft(username); } }); frame.add(usernameField); frame.add(launchButton); frame.setVisible(true); } private static void launchMinecraft(String username) { try { ProcessBuilder processBuilder = new ProcessBuilder(javaPath, "-jar", minecraftPath + File.separator + "versions" + File.separator + forgeVersion + File.separator + forgeVersion + ".jar"); processBuilder.directory(new File(minecraftPath)); processBuilder.environment().put("username", username); Process process = processBuilder.start(); BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } process.waitFor(); } catch (IOException e) { System.err.println("Erreur lors du lancement de Minecraft : " + e.getMessage()); } catch (InterruptedException e) { System.err.println("Lancement de Minecraft interrompu : " + e.getMessage()); } } }
Windows / Chrome 113.0.0.0
- Bs launcher
- Bslauncher - Meilleures réponses
- Minecraft bs launcher - Meilleures réponses
- Delayed launcher ✓ - Forum Windows 10
- Az launcher - Forum Minecraft
- Démarrage rapide ✓ - Forum Windows
- Launcher.exe au démarrage - Forum Logiciels
- Go launcher c'est quoi - Télécharger - Présentation
2 réponses
Bonjour,
Ton BufferedReader ne lis que le flux standard (System.out) mais il faudrait également lire le flux d'erreur (System.err) car il contient peut-être des lignes qui t'aiderait à comprendre le problème.
J'ai modifié ta méthode launchMinecraft pour qu'elle lise les deux flux en même temps :
private static void launchMinecraft(String username) { System.out.println("LAUNCH: " + username); try { ProcessBuilder processBuilder = new ProcessBuilder(javaPath, "-jar", minecraftPath + File.separator + "versions" + File.separator + forgeVersion + File.separator + forgeVersion + ".jar"); processBuilder.directory(new File(minecraftPath)); processBuilder.environment().put("username", username); Process process = processBuilder.start(); Thread out = startReadStreamThread(process.getInputStream(), line -> System.out.println("STDOUT: " + line)); Thread err = startReadStreamThread(process.getErrorStream(), line -> System.err.println("STDERR: " + line)); try { System.out.println("FINISH: " + process.waitFor()); } finally { out.join(); err.join(); } } catch (Throwable t) { System.err.println("FINISH: " + t); } } private static Thread startReadStreamThread(InputStream in, Consumer<String> out) { Thread t = new Thread(() -> readStream(in, out)); t.setDaemon(true); t.start(); return t; } private static void readStream(InputStream in, Consumer<String> out) { try (Scanner sc = new Scanner(in)) { while (sc.hasNextLine()) { out.accept(sc.nextLine()); } } }
Bonjour merci pour votre réponse mais ca ne marche toujours pas voici le lien avec le code en description de la vidéo
Merci d'avance pour votre réponse
Vidéo: https://www.youtube.com/watch?v=cyNQo614dWk&feature=youtu.be
Ah euh enfaite il manque simplement des import au debut du code j'essaye de les changé et je vous tient au courant
Re voici mon nouveau probleme voici le lien de la vidéo : https://www.youtube.com/watch?v=WMD8KAh5mzU&feature=youtu.be
J'esspere que ca vous aidera a m'aider
Merci d'avance
Cordialement ElectricCrystal
Bonjour,
Il n'est pas utile - et même contreproductif - de faire des vidéos YouTube à chaque fois que tu as un message d'erreur, un copier-coller de l'erreur sur le forum suffit.
Concernant le message "impossible de trouver ou charger la classe principale net.minecraft.client.Main" son équivalent en anglais (pour chercher sur Google) c'est "Could not find or load main class net.minecraft.client.Main"
Cette erreur semble assez fréquente sur les forums Minecraft, je te laisse regarder les différents post qui existent :