类装入器问题 - 如何确定装入了哪些库版本(jar 文件)
2022-09-01 16:01:08
如果您碰巧使用 JBoss,则有一个 MBean(类装入器存储库 iirc),您可以在其中请求所有已装入某个类的类装入器。
如果所有其他方法都失败了,则始终会为正在加载的每个类文件打印jar的位置。java -verbose:class
如果 jar 清单中有适当的版本信息,则有一些方法可以检索和测试版本。无需手动读取清单。
java.lang.Package.getImplementationVersion() 和 getSpecificationVersion() 和 isCompatibleWith() 听起来像是他们会做你想要做的事情。
你可以用 this.getClass().getPackage() 以及其他方式获取 Package。
javadoc for java.lang.Package 没有为这些属性提供特定的清单属性名称。快速的谷歌搜索在 http://java.sun.com/docs/books/tutorial/deployment/jar/packageman.html