如何使用可执行 Jar 包含文本文件

2022-09-04 03:28:08

我有一个Java项目,我想在可执行jar中包含一个文本文件。现在,文本文件位于默认包中。

InputFlatFile currentFile = new InputFlatFile(“src/theFile.txt”);

我用那行抓取文件,正如你使用src所看到的。但是,这不适用于可执行jar。

如何将此文件与可执行jar一起保存,以便使用该程序的人只需单击单个图标即可运行该程序?


答案 1

你想要它在可执行罐中吗?然后读取您应该使用的文件

getClass().getResourceAsStream()

以读取文件。

将文本文件保留在要从中访问它的包中。类装入器会找到它。

还要记住,JAR 中的文件名区分大小写。


答案 2

jar 文件中的基目录位于类路径中。

Try InputFlatFile currentFile = new InputFlatFile(“theFile.txt”);

您可能正在使用 IDE,并且其中有一个 src 文件夹,IDE 将该文件夹用作包的基础。从 IDE 创建 jar 文件时,它会删除 src 文件夹,根文件夹中包含包。

即在 eclipse src/com.blah.blah 中,一旦创建了 jar 文件,结构就会变为 com.blah.blah

当然,我假设 InputFlatFile 正在正确读取该值。

http://www.devdaily.com/blog/post/java/read-text-file-from-jar-file


推荐