◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
classnotfoundexception 错误:重启程序后消失
在 java 程序中遭遇了 classnotfoundexception 错误,重启程序后却奇迹般地消失了。令人费解的是,出错的类明明存在且已被导入。
查看错误信息,发现无法找到 com.vcanbuy.web.excel.model.noordercustomersexcel 类。此类用于导出客户数据到 excel 文件。
仔细检查代码,在以下方法中使用了该类:
立即学习“Java免费学习笔记(深入)”;
@GetMapping("no_order_customers") public void exportNoOrderCustomers(...) { ... WebUtil.downloadExcel(..., NoOrderCustomersExcel.class); }
然而,该类所在的 jar 包的位置很诡异——它是被释放到了临时文件夹中。导致的问题是,当服务器重启或进行系统清理时,该 jar 包就会被删除,从而导致 classnotfoundexception。
重启程序后,jar 包又会被创建和加载,因此错误就会消失。然而,一旦 jar 包再次被清除,错误就会再次出现。
解决方案是将 jar 包移动到永久性位置,以确保它始终可供程序访问。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。