2

当我在 Eclipse 中编译并运行我的程序时,它会毫无例外地运行。但是当我将它导出到可运行的 jar 或普通 jar 时,它找不到我的设置文件。

我的路径是:

String path= "src/settings/settings.ini";

在 Eclipse 中,它毫无例外地运行,但在 jar 中,它会立即抛出异常。

如何使 jar 像在 eclipse 中一样工作?

4

2 回答 2

5

而在 jar 中,该文件不再是物理文件,因此您可能需要将其作为 Stream 读取

getClassLoader().getResourceAsStream("settings/settings.ini");

考虑到 settings.ini 在指定路径的类路径(运行时)下

于 2012-09-11T11:24:05.093 回答
0

如果 ini 文件位于 jar 存档中,请按如下方式读取:

inputstream = getClass()
          .getClassLoader()
          .getResourceAsStream("settings/settings.ini");

否则,如果它位于您的 jar 存档之外,您应该在./settings/settings.ini中移动或复制您的 ini 文件(相对于应用程序的当前工作目录)。

于 2012-09-11T11:33:19.287 回答