[解決済み] クラスがどのJARファイルからのものかを判断する
2022-04-22 13:23:01
質問
今、IDEを前にしていないので、APIの仕様だけを見ています。
CodeSource src = MyClass.class.getProtectionDomain().getCodeSource();
if (src != null) {
URL jar = src.getLocation();
}
あるクラスがどのJARファイルからのものかを判断したい。これは、そのための方法ですか?
どのように解決するのですか?
ブートストラップ・クラスローダで読み込まれたクラス以外のすべてのクラスで動作します。他の判断方法としては
Class klass = String.class;
URL location = klass.getResource('/' + klass.getName().replace('.', '/') + ".class");
notnoop さんのご指摘の通り
klass.getResource()
メソッドは、クラスファイル自体の場所を返します。例えば
jar:file:/jdk/jre/lib/rt.jar!/java/lang/String.class
file:/projects/classes/pkg/MyClass$1.class
は
getProtectionDomain().getCodeSource().getLocation()
メソッドは、jar ファイルの場所または CLASSPATH を返します。
file:/Users/home/java/libs/ejb3-persistence-1.0.2.GA.jar
file:/projects/classes
関連
-
java Mail send email smtp is not authenticated by TLS encryption solution.
-
javaでよく使われる英単語
-
スレッド "main" で例外発生 java.net.BindException: アドレスは既に使用中です。NET_Bind
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] Mavenを使用して、依存関係を持つ実行可能なJARを作成するにはどうすればよいですか?
-
[解決済み] Javaで配列に特定の値が含まれているかどうかを判断するにはどうすればよいですか?
-
[解決済み] Pythonで静的なクラス変数は可能ですか?
-
[解決済み] Could not find or load main class "とはどういう意味ですか?
-
[解決済み] 整数の平方根が整数であるかどうかを判断する最速の方法
-
[解決済み] Mavenでjarに依存関係を含める
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
スタイルが読み込まれず、ブラウザコンソールでエラーが報告される。リソースはスタイルシートとして解釈されますが、MIMEタイプtext/htmlで転送されます。
-
java の例外が発生しました java
-
Dateが型に解決できない問題を解決する
-
をインスタンス化することができません。
-
javaの模造品QQ WeChatのチャットルーム
-
JavaMailのメール送信が失敗するケースとその説明の分析
-
node js npm gruntインストール、elasticsearch-head 5.Xインストール
-
Eclipse起動エラー:javaは起動したが、終了コード=1を返した(ネット上の様々な落とし穴)
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
JSPで「リストが型解決できない!」の解決方法