Java JAR找不到文件

时间:2013-12-08 08:34:56

标签: file jar reference path load

我在eclipse中运行一个引用程序源文件夹中的文件的程序。但是,当我将程序导出到可运行的JAR时,程序似乎无法找到该文件。从本质上讲,该程序在eclipse中工作得很好,但当它是一个独立的程序时却不会这样做。

我附上了一张如何在程序中引用该文件的照片。

enter image description here

1 个答案:

答案 0 :(得分:8)

一旦它在jar中,你就无法使用new File()找到它 - 它现在是一个类路径资源。您需要使用this.getClass().getResourceAsStream("/TestFileFolder/TRANSFER.xls");(或者,如果您的方法是静态的,则需要使用className.class代替getClass())。

这实际上是一个功能 - 如果由于任何原因你需要更改TRANSFER.xls资源,你可以通过在类路径中隐藏它而不重新打包jar来实现。