首页 > 解决方案 > 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);

在我的个人计算机上,路径被打印出来,但在我的工作计算机上,它作为空指针返回。

请建议。

标签: javanullpointerexceptiongetresource

解决方案


我所做的其中一项更改修复了它。

  • 卸载的 JDKS/JRE 和 Eclipse
  • 安装 JDK 8(在工作计算机上使用 10)和 Eclipse
  • 在桌面上而不是在我的文档中创建了新的工作区
  • 从头开始项目,复制我的旧代码/包
  • 做了多个 Maven 清理和项目清理。

现在该项目也在我的工作计算机上运行良好。如果我必须选择最重要的原因之一,我会说第三个原因,但可能是其他原因或它们的组合:)


推荐阅读