• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

ProcessBuilder funktioniert nicht

ImNowAPro

Minecrafter
Osterei Experte
Mitglied seit
31 Dezember 2017
Beiträge
12
Alter
15
Minecraft
ImNowAPro
Hallo, ich arbeite derzeit mit ProcessBuildern, sobald ich versuche folgenden Code auszuführen:
Java:
new ProcessBuilder("java " +
                   "-Dfile.encoding=UTF8 -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:+UseCompressedOops -XX:MaxGCPauseMillis=10 -XX:GCPauseIntervalMillis=100 -XX:+UseAdaptiveSizePolicy -XX:ParallelGCThreads=2 -XX:UseSSE=3 " +
                   "-Xms" + maxRam + "M -Xmx" + maxRam + "M " +
                   "-Dghoulcloud.name=\""+ name + "\" " +
                   "-Dghoulcloud.master.ip=\"" + GhoulDaemon.getInstance().getConfig().getString("master.ip") + "\" " +
                   "-Dghoulcloud.master.port=" + GhoulDaemon.getInstance().getConfig().getInteger("master.port") + " " +
                   "-jar proxy.jar").directory(directory).start();
bekomme ich diesen Fehler:
Code:
Cannot run program "java -Dfile.encoding=UTF8 -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:+UseCompressedOops -XX:MaxGCPauseMillis=10 -XX:GCPauseIntervalMillis=100 -XX:+UseAdaptiveSizePolicy -XX:ParallelGCThreads=2 -XX:UseSSE=3 -Xms1024M -Xmx1024M -Dghoulcloud.name="Test-1" -Dghoulcloud.master.ip="localhost" -Dghoulcloud.master.port=40 -jar proxy.jar" (in directory ".\temp\proxies\Test-1"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden
Kann mir jemand helfen?
 

ImNowAPro

Minecrafter
Osterei Experte
Mitglied seit
31 Dezember 2017
Beiträge
12
Alter
15
Minecraft
ImNowAPro
So, der Prozess startet jetzt. Hab es folgendermaßen gelöst:
Java:
new ProcessBuilder("java",
                   "-Dfile.encoding=UTF8", "-XX:+UseG1GC", "-XX:+UnlockExperimentalVMOptions", "-XX:+AggressiveOpts", "-XX:+DoEscapeAnalysis", "-XX:+UseCompressedOops", "-XX:MaxGCPauseMillis=10", "-XX:GCPauseIntervalMillis=100", "-XX:+UseAdaptiveSizePolicy", "-XX:ParallelGCThreads=2", "-XX:UseSSE=3",
                   "-Xms" + maxRam + "M", "-Xmx" + maxRam + "M",                           
                   "-Dghoulcloud.name=\""+ name + "\"",
                   "-Dghoulcloud.master.ip=\"" + GhoulDaemon.getInstance().getConfig().getString("master.ip") + "\"",
                   "-Dghoulcloud.master.port=" + GhoulDaemon.getInstance().getConfig().getInteger("master.port"),
                   "-jar", "proxy.jar").directory(directory).start();
Nun werden aber nicht alle System-Properties gesetzt, hab sie mal aus Testzwecken ausgeben lassen:
Code:
20:58:04 [INFORMATION] java.runtime.name
20:58:04 [INFORMATION] sun.boot.library.path
20:58:04 [INFORMATION] java.vm.version
20:58:04 [INFORMATION] java.vm.vendor
20:58:04 [INFORMATION] java.vendor.url
20:58:04 [INFORMATION] path.separator
20:58:04 [INFORMATION] ghoulcloud.master.ip
20:58:04 [INFORMATION] java.vm.name
20:58:04 [INFORMATION] file.encoding.pkg
20:58:04 [INFORMATION] user.country
20:58:04 [INFORMATION] user.script
20:58:04 [INFORMATION] sun.java.launcher
20:58:04 [INFORMATION] sun.os.patch.level
20:58:04 [INFORMATION] java.vm.specification.name
20:58:04 [INFORMATION] user.dir
20:58:04 [INFORMATION] java.runtime.version
20:58:04 [INFORMATION] java.awt.graphicsenv
20:58:04 [INFORMATION] java.endorsed.dirs
20:58:04 [INFORMATION] os.arch
20:58:04 [INFORMATION] java.io.tmpdir
20:58:04 [INFORMATION] line.separator
 

❤️可愛いちゃん️❤️

Threadripper
Osterei Experte
Mitglied seit
19 Mai 2014
Beiträge
1.221
Alter
2
Teil das mal auf in Binary und Arguments und nutz dann die Methoden des ProcessBuilder und hau nicht alles in den Konstruktor. Dann kannst du das Argument Array auch zu Debugzwecken mal ausgeben, ich würde wetten da ist irgendwo noch etwas falsch. Ich glaub der ProcessBuilder implementiert auch toString für Debugging
 

ImNowAPro

Minecrafter
Osterei Experte
Mitglied seit
31 Dezember 2017
Beiträge
12
Alter
15
Minecraft
ImNowAPro

ImNowAPro

Minecrafter
Osterei Experte
Mitglied seit
31 Dezember 2017
Beiträge
12
Alter
15
Minecraft
ImNowAPro
Java:
ArrayList<String> command = new ArrayList<>();
command.addAll(Arrays.asList("java",
                             "-Dfile.encoding=UTF8 -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:+AggressiveOpts -XX:+DoEscapeAnalysis -XX:+UseCompressedOops -XX:MaxGCPauseMillis=10 -XX:GCPauseIntervalMillis=100 -XX:+UseAdaptiveSizePolicy -XX:ParallelGCThreads=2 -XX:UseSSE=3 " +
                             "-Xms" + maxRam + "M -Xmx" + maxRam + "M " +
                             "-Dghoulcloud.name=\"" + name + "\" " +
                             "-Dghoulcloud.master.ip=\"" + GhoulDaemon.getInstance().getConfig().getString("master.ip") + "\" " +
                             "-Dghoulcloud.master.port=" + GhoulDaemon.getInstance().getConfig().getInteger("master.port") + " " +
                             "-jar proxy.jar"));
process = new ProcessBuilder().command(command).directory(directory).start();
Ich hoffe mal du meintest das so. Fehlermeldung gibt es nicht.
 

❤️可愛いちゃん️❤️

Threadripper
Osterei Experte
Mitglied seit
19 Mai 2014
Beiträge
1.221
Alter
2
Na wenn es keine Fehlermeldung gibt und auch kein Fehler auftritt, dann funktioniert es wohl. Was machst du denn danach mit dem Prozess? Ist das der ganze Code? Liest den den Output und Error-Stream des Prozess aus? Ansonsten wird der Prozess vermutlich nicht viel tun können, sobald der Outputbuffer voll ist. Google sollte hier helfen. Ob der Prozess korrekt gestartet ist, kannst du in der Prozesstabelle ja nachgucken.
 

ImNowAPro

Minecrafter
Osterei Experte
Mitglied seit
31 Dezember 2017
Beiträge
12
Alter
15
Minecraft
ImNowAPro
Dass der Prozess nicht korrekt startet erkenne ich daran, dass die "proxy.jar"(Das ist eine frische BungeeCord-Datei) nicht die benötigten Dateien erstellt(z.B. config.yml). Die Streams geben nichts aus.
 
Allgemein
Hilfe Benutzer
  • nero_2411 nero_2411:
    moini :D
  • LottaXL LottaXL:
    Moin, moin =)
  • Matthias Matthias:
    Guten Morgen
  • L Luki_xx:
    Guten Morgen
    :)
  • SirYwell SirYwell:
    Morgen
  • iTz_Proph3t iTz_Proph3t:
    Na ihr?
  • nexobeast nexobeast:
    Naaa
  • nexobeast nexobeast:
    guten Hallo
  • Bella Bella:
    Hallo
  • maybeto maybeto:
    5 Milchschnitte übereinander, mega lecker
  • Rabe Rabe:
    Ich mag keine Milchschnitte
  • maybeto maybeto:
    hätte dir eh keine abgegeben
  • Rabe Rabe:
    Hast du das Schild etwa übersehen
  • Matthias Matthias:
    Guten Morgen
  • iTz_Proph3t iTz_Proph3t:
    Du hast nicht geschlafen, das zählt ned!
  • SirYwell SirYwell:
    Morgen
  • LottaXL LottaXL:
    Moin, moin =)
  • maybeto maybeto:
    mit wem redest du?
  • Matthias Matthias:
    Guten Morgen
  • LottaXL LottaXL:
    Moin, moin =)
  • Majoox Majoox:
    Guten T. A. G.
  • Matthias Matthias:
    Guten Morgen
  • LottaXL LottaXL:
    Moin, moin =)
    LottaXL LottaXL: Moin, moin =)
    Oben