Wenn Sie das Debug-Level aus dem eigenen Programm einstellen, kann eine Linie sein, wie:
public static final boolean DEBUG_MODE = System.getProperty("java.vm.info", "").contains("sharing");
den Trick tun würde.
getestet Gerade in eclipse3.5:
package test;
public class Test
{
/**
* @param args
*/
public static void main(String[] args)
{
System.out.println(System.getProperty("java.vm.info", ""));
}
}
wird angezeigt:
mixed mode, sharing
gestartet, wenn ohne Debug
mixed mode
mit Debug Launcher ausgeführt, wenn
Joachim Sauer Kommentare:
Dies ist sehr System abhängig.
Ich nehme an, die "Freigabe" zeigt an, dass Cross-VM-Klassenfreigabe aktiv ist.
Dies ist eine sehr neue Funktion und ist nur auf einigen Plattformen verfügbar.
Darüber hinaus gibt es viele mögliche Gründe, um es zu deaktivieren oder zu deaktivieren, also würde ich dies nicht für die Debug-Modus-Erkennung verwenden.
. (Anmerkung: Ich kann es mit der neuesten jdk1.6b14 getestet Ich lasse dies als CW Antwort.)
@ hB0 Die ursprüngliche Frage bezieht sich nicht auf Android. –