1

ワークスペースとjarファイルにも同じクラスファイルがあります(インポートしたものです)実行時にどのファイルが呼び出されているかを知るにはどうすればよいですか??

Eclipse では、インスタンスで Open Declaration を押すと、jar バージョンが表示されるため、混乱しています。そして、私がいくつかのシステムアウトをローカルコピーに保持したとき、それらは呼び出されています??

どのファイルが呼び出されているかを知る方法を教えてください??

私はこれらのコードについて話していました:

Props.getProperty(clientID + ".MetaPI", true);

この Props クラスは、jar とローカル コピーの両方に存在します。

4

4 に答える 4

1

このようなことを試してください:

System.out.println(this.getClass().getProtectionDomain().getCodeSource().getLocation().toURI().getPath());
于 2011-12-06T08:51:44.473 に答える
1

クラスパスの最初にあるものは何でも呼び出す必要があります。理想的なケースでは、クラスフォルダーであるため、クラスファイルにする必要があります。

于 2011-12-06T08:45:03.567 に答える
0

java -verbose でアプリケーションを起動できます。これは、クラス・ローダーによってロードされたクラスをログに記録します

于 2011-12-06T09:24:32.217 に答える
0

これはおそらく役立つかもしれません:

this.getClass().getProtectionDomain().getCodeSource().getLocation();
于 2011-12-06T09:59:55.607 に答える