So drucken Sie den Standard-Java-Klassenpfad über die Befehlszeile in Windows

25868
Barton Chittenden

Ich mache einige Fehlerbehebungen, die erfordern, dass ich den Standardklassenpfad unter Windows kenne. Es gibt Java-Code, der dies tun wird (zB http://dev-answers.blogspot.com/2006/06/how-do-you-print-java-classpath.html ), aber ich würde wirklich gerne so etwas wie Sie sehen würde von bekommen perl -V:

... @INC: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl 

Hat Java eine schnelle Befehlszeile, um dies zu tun?

9

2 Antworten auf die Frage

10
K Adithyan
  1. jdk/bin/jps sollte alle Java-Prozess-IDs auflisten, auf denen das System ausgeführt wird
  2. Anschließend rufen jdk/bin/jinfo <pid>Sie viele Informationen ab ... was Sie benötigen, ist auch da ...
Kein direkter Weg, um die Informationen zu bekommen ?! vonbrand vor 11 Jahren 0
Da die Anforderung darin besteht, die Informationen von der Befehlszeile abzurufen, habe ich dies gesagt. Dies ist der einfachste Weg in der Befehlszeile. Wenn die grafische Ansicht in Ordnung ist, gibt es die Tools jvisualvm, jconsole, Profiler usw. Vom Code können wir dieselben Informationen mit System.out.println (System.getProperty ("java.class.path")) abrufen. K Adithyan vor 11 Jahren 0
4
sleske

Der Standardklassenpfad muss nicht gedruckt werden. In Java ist der Standardklassenpfad nur das aktuelle Verzeichnis:

Wenn -classpath und -cp nicht verwendet werden und CLASSPATH nicht festgelegt ist, besteht der Benutzerklassenpfad aus dem aktuellen Verzeichnis (.).

( Dokumentation java: )

Hinweis: Der Vollständigkeit halber: Es gibt zwei andere Pfade, auf denen javanach Dingen gesucht wird:

  • Der Bootstrap-Klassenpfad
  • das Erweiterungsverzeichnis

Der Pfad der Bootstrap-Klasse zeigt standardmäßig auf Teile des JDK, und Sie möchten fast nie damit etwas anfangen (es sei denn, Sie möchten einen Teil des JDK außer Kraft setzen). Sie sollten sich also wahrscheinlich keine Gedanken darüber machen. Die Erweiterungsverzeichnisse dienen zur Erweiterung des JDK. Siehe http://docs.oracle.com/javase/7/docs/technotes/guides/extensions/index.html