我在其他地方找不到这个问题的明确答案,所以我会在这里尝试:
是否有某种方式(编程方式或其他方式)来获取应用程序类加载器按照加载的确切顺序加载的 JAR/类列表? 应用程序类加载器是指在应用服务器(WLS、WAS、JBoss...)中加载 EAR 应用程序的类加载器,但显然,它适用于任何类加载器。
所以,概括地说,我想找出指定类加载器加载的 JAR 的列表和顺序。不是单个类,通过调用 classloader.getPackages() 很容易找到,而是由这个类加载器加载的 JAR 文件列表。
最佳答案
您是否尝试过使用 JVM 选项 -verbose:class
。它显示所有加载的 JAR 文件和类。
例子:
[Opened C:\Program Files\JDK160~1\jre\lib\rt.jar]
[Loaded java.lang.Object from C:\Program Files\JDK160~1\jre\lib\rt.jar]
关于java - 如何查找类加载器加载哪些 jar 以及以什么顺序加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2179858/