Rumah  >  Artikel  >  Java  >  Bagaimanakah saya boleh mendapatkan senarai lengkap semua kelas yang dimuatkan dalam JVM, termasuk dari pakej tertentu dan keturunannya?

Bagaimanakah saya boleh mendapatkan senarai lengkap semua kelas yang dimuatkan dalam JVM, termasuk dari pakej tertentu dan keturunannya?

DDD
DDDasal
2024-10-25 07:13:02377semak imbas

How can I get a complete list of all classes loaded in the JVM, including those from specific packages and their descendants?

Dapatkan Senarai Komprehensif Kelas yang Dimuatkan dalam JVM

Soalan:

Mencari kaedah untuk mendapatkan senarai lengkap semua kelas yang dimuatkan ke dalam JVM, tanpa mengira status beban sebelumnya, adalah keperluan biasa. Senarai ini harus termasuk kelas yang dimiliki oleh pakej tertentu dan keturunannya.

Jawapan:

Walaupun mungkin tiada penyelesaian program langsung, terdapat alternatif yang mudah:

Menggunakan Pilihan Baris Perintah "-verbose:class":

Dengan melaksanakan arahan berikut:

java -verbose:class ....

JVM akan menyediakan Pembacaan verbose semua kelas sedang dimuatkan, bersama-sama dengan lokasi dari mana ia diambil. Berikut ialah contoh output sedemikian:

[Opened /usr/java/j2sdk1.4.1/jre/lib/rt.jar]
[Opened /usr/java/j2sdk1.4.1/jre/lib/sunrsasign.jar]
[Opened /usr/java/j2sdk1.4.1/jre/lib/jsse.jar]
[Opened /usr/java/j2sdk1.4.1/jre/lib/jce.jar]
[Opened /usr/java/j2sdk1.4.1/jre/lib/charsets.jar]
[Loaded java.lang.Object from /usr/java/j2sdk1.4.1/jre/lib/rt.jar]
[Loaded java.io.Serializable from /usr/java/j2sdk1.4.1/jre/lib/rt.jar]
[Loaded java.lang.Comparable from /usr/java/j2sdk1.4.1/jre/lib/rt.jar]
[Loaded java.lang.CharSequence from /usr/java/j2sdk1.4.1/jre/lib/rt.jar]
[Loaded java.lang.String from /usr/java/j2sdk1.4.1/jre/lib/rt.jar]

Output ini dengan jelas menunjukkan proses pemuatan dan lokasi sumber kelas.

Untuk maklumat lebih terperinci, rujuk: [JVM -verbose Argument Dokumentasi](https://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html#verbose).

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan senarai lengkap semua kelas yang dimuatkan dalam JVM, termasuk dari pakej tertentu dan keturunannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn