Maison  >  Article  >  Java  >  Comment puis-je obtenir une liste complète de toutes les classes chargées dans la JVM, y compris celles de packages spécifiques et leurs descendants ?

Comment puis-je obtenir une liste complète de toutes les classes chargées dans la JVM, y compris celles de packages spécifiques et leurs descendants ?

DDD
DDDoriginal
2024-10-25 07:13:02380parcourir

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

Obtenir une liste complète des classes chargées dans la JVM

Question :

Trouver une méthode pour récupérer une liste complète de toutes les classes chargées dans la JVM, quel que soit leur état de chargement antérieur, est une exigence courante. Cette liste doit inclure les classes appartenant à un package spécifique et leurs descendants.

Réponse :

Bien qu'il n'y ait pas de solution programmatique directe, il existe une alternative pratique :

Utilisation de l'option de ligne de commande "-verbose:class" :

En exécutant la commande suivante :

java -verbose:class ....

La JVM fournira un lecture détaillée de toutes les classes en cours de chargement, ainsi que des emplacements à partir desquels elles sont récupérées. Voici un exemple d'une telle sortie :

[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]

Cette sortie montre clairement le processus de chargement et les emplacements source des classes.

Pour des informations plus détaillées, reportez-vous à : [JVM -verbose Argument Documentation](https://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html#verbose).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn