【Java】打印运行环境中某个类引用的jar版本路径

背景

正式环境出现jar版本不匹配问题,不知道正式环境用的哪个jar版本。通过一下可以打印出类调用的jar

java 复制代码
// 获取 POIFSFileSystem 类的加载器并打印其来源路径
ClassLoader classloaderPOIFS = org.apache.poi.poifs.filesystem.POIFSFileSystem.class.getClassLoader();
URL resPOIFS = classloaderPOIFS.getResource("org/apache/poi/poifs/filesystem/POIFSFileSystem.class");
String pathPOIFS = resPOIFS != null ? resPOIFS.getPath() : "Not found";
System.out.println("POIFSFileSystem came from " + pathPOIFS);

// 获取 WorkbookFactory 类的加载器并打印其来源路径
ClassLoader classloaderWorkbook = org.apache.poi.ss.usermodel.WorkbookFactory.class.getClassLoader();
URL resWorkbook = classloaderWorkbook.getResource("org/apache/poi/ss/usermodel/WorkbookFactory.class");
String pathWorkbook = resWorkbook != null ? resWorkbook.getPath() : "Not found";
System.out.println("WorkbookFactory came from " + pathWorkbook);
相关推荐
暮雪倾风14 分钟前
【JS-Node】node.js环境安装及使用
开发语言·javascript·node.js
Dxy12393102167 小时前
Python 使用正则表达式将多个空格替换为一个空格
开发语言·python·正则表达式
故事和你919 小时前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论
techdashen10 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
一 乐10 小时前
电影院|基于springboot + vue电影院购票管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·电影院购票管理管理系统
星空椰10 小时前
JavaScript 进阶基础:函数、作用域与常用技巧总结
开发语言·前端·javascript
恼书:-(空寄10 小时前
JVM GC 日志分析 + 常见 GC 场景 + 实战参数调优
java·jvm
消失的旧时光-194310 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦
忒可君10 小时前
C# winform 自制分页功能
android·开发语言·c#
Rust研习社10 小时前
Rust 智能指针 Cell 与 RefCell 的内部可变性
开发语言·后端·rust