我刚刚解决了另一个 *I-though-I-was-using-this-version-of-a-library-but-appparently-my-app-server-has-already-loaded-an-older-这个库的版本-*问题(叹气)。
有人知道验证(或监控)您的应用程序是否可以访问所有适当的 jar 文件或加载的类版本的好方法吗?
提前致谢!
[附注开始使用 OSGi module architecture 的一个很好的理由在我看来!]
更新:This文章也有帮助!它通过将 JBoss 的类加载器写入日志文件来让我了解加载了哪些类。
最佳答案
如果您碰巧在使用 JBoss,那么有一个 MBean(类加载器存储库 iirc),您可以在其中询问已加载某个类的所有类加载器。
如果所有其他方法都失败了,总是有 java -verbose:class
它将打印每个正在加载的类文件的 jar 的位置。
关于java - 类加载器问题 - 如何确定加载了哪些库版本(jar 文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/139534/