web-dev-qa-db-ja.com

WindowsのコマンドラインからデフォルトのJavaクラスパスを印刷する方法

Windowsでのデフォルトのクラスパスを知る必要があるトラブルシューティングを行っています。これを行うJavaコードがあります(例 http://dev-answers.blogspot.com/2006/06/how-do-you-print-Java-classpath。 html )ですが、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

Javaには、これを行う簡単なコマンドライン方法がありますか?

10
  1. jdk/bin/jpsは、Javaそのシステムを実行しているプロセスIDをすべてリストする必要があります
  2. 続いてjdk/bin/jinfo <pid>を呼び出して多くの情報を表示します...必要なものもそこにあります...
12
K Adithyan

デフォルトのクラスパスを出力する必要はありません。 Javaでは、デフォルトのクラスパスは現在のディレクトリです。

-classpathと-cpが使用されておらず、CLASSPATHが設定されていない場合、ユーザークラスパスは現在のディレクトリ(。)で構成されます。

Java のドキュメント)

注:完全を期すために、Javaが他のものを探す他の2つのパスがあります。

  • bootstrapクラスパス
  • 拡張ディレクトリ

bootstrapデフォルトではクラスパスはJDKの一部を指しているため、JDKの一部をオーバーライドしたくない場合を除き)ほとんど変更を加えたくないので、おそらく心配する必要はありません。拡張ディレクトリはJDKを拡張するためのものです http://docs.Oracle.com/javase/7/docs/technotes/guides/extensions/index.html を参照してください

8
sleske