我在 eclipse 中运行一个程序,该程序引用了程序源文件夹中的一个文件。但是,当我将程序导出到可运行的 JAR 中时,该程序似乎找不到该文件。从本质上讲,该程序在 eclipse 中完美运行,但当它是一个独立程序时就不行了。
我附上了一张我如何在程序中引用文件的照片。
最佳答案
一旦它在 jar 里,你就无法使用 new File()
找到它。 -- 它现在是一个类路径资源。您需要使用 this.getClass().getResourceAsStream("/TestFileFolder/TRANSFER.xls");
(或者,如果您的方法是静态的,则需要使用 className.class
代替 getClass()
)。
这实际上是一个功能——如果出于任何原因您需要更改 TRANSFER.xls
资源,您可以通过在类路径中隐藏它来实现,而无需重新打包 jar。
关于file - Java JAR 找不到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20451386/