java - getresource() 空指针的问题
问题描述
我正在使用这段代码:
URL excelResources = Excel_file_reader.class.getClass().getResource("/Test_Cases.xlsx");
读取excel文件以防我必须创建一个jar。我不断收到空指针异常。
我在我的个人计算机上运行了完全相同的项目,代码实际运行并且程序可以读取 excel 值。但是在我的工作计算机上,代码无法运行并导致空指针异常。在两台计算机上,我创建了一个资源文件夹并将其添加到项目路径中。excel 文件放置在两台计算机上的相同位置。我知道 JDK 和 Eclipse 版本是不同的,但我认为这不会有所不同。在我的工作计算机上,我也有管理员权限。我已经清理了项目并尝试了多次。当我使用
System.out.println(excelResources.getPath());
File excel = new File(excelResources.toURI());
FileInputStream ExcelFile= new FileInputStream(excel);
在我的个人计算机上,路径被打印出来,但在我的工作计算机上,它作为空指针返回。
请建议。
解决方案
我所做的其中一项更改修复了它。
- 卸载的 JDKS/JRE 和 Eclipse
- 安装 JDK 8(在工作计算机上使用 10)和 Eclipse
- 在桌面上而不是在我的文档中创建了新的工作区
- 从头开始项目,复制我的旧代码/包
- 做了多个 Maven 清理和项目清理。
现在该项目也在我的工作计算机上运行良好。如果我必须选择最重要的原因之一,我会说第三个原因,但可能是其他原因或它们的组合:)
推荐阅读
- android - 我不能参加其他活动,从 createfood 到 displayfood
- javascript - 如何将 Express.js 中的图像提供给 React
- xcode - @IBInspectable 属性未显示在 Interface Builder 中
- python - 这个数组声明在 Python 中意味着什么?
- javascript - PHP MySQL 使用 jQuery 用包含换行符的文本填充 Textarea
- python - 替换数组中的元素(python)
- android - 如何通过使用 Google Maps API 计算长度来制作特定路线并跟踪它
- database - 名称搜索算法 [学校项目]
- c++ - OpenGL 将三角形网格缩放为单位立方体
- python - 过滤存储在 csv 文件中的数据