ueberpruefen ob vm im debugmodus

kyroding

Grünschnabel
Hallo,

ich starte meine vm mit dem argument -Xdebug . kann ich während der laufzeit im code irgendwie überprüfen ob dieses argument gesetzt ist.


gruß kyro
 
Hallo,

AFAIK ist die XDebug JVM Option veraltet. Wenn du eine Java App Debuggen / bzw. dich später daran binden (Attachen) möchtest, kannst du den Java Launcher mit den JVM Optionen:
-agentlib:jdwp=transport=dt_socket,server=y,address=8000starten.

http://www.tutorials.de/forum/java/189239-java-anwendungen-remote-debuggen.html

schau mal hier:
Java:
/**
 * 
 */
package de.tutorials;

import java.lang.management.ManagementFactory;
import java.util.List;
import java.util.concurrent.TimeUnit;

/**
 * @author Tom
 * 
 */
public class TestForDebugMode {

    /**
     * @param args
     */
    public static void main(String[] args) throws Exception {
        System.out.println(inDebugMode());
        TimeUnit.SECONDS.sleep(60);
    }

    private static boolean inDebugMode() {
        List<String> jvmArgs = ManagementFactory.getRuntimeMXBean()
                .getInputArguments();

        System.out.println(jvmArgs);

        if (jvmArgs != null) {
            for (String jvmArg : jvmArgs) {
                if (jvmArg.contains("-agentlib:jdwp")) {
                    return true;
                }
            }
        }

        return false;
    }

}
So kannst du feststellen, ob die JVM mit Debug Optionen gestartet wurde.

Gruß Tom
 
Zurück