我有一个文件保存用于加载我的应用程序的textField的默认信息。我在编译时查找了如何将这些内置到我的jar文件中,并且我被告知将它放在源代码包中,它将被带入,所以我已经完成了。文件路径在NetBeans中工作,但不在构建的JAR文件中
文件结构:
Project
-Source Packages
-src
~Java Classes
-defaultFiles
~Defaults.txt
我想使用的代码是这样的:
BufferedReader in;
try {
URL resourceURL = FuelProperties.class.getResource("/defaultFiles/Defaults.txt");
in = new BufferedReader(new FileReader(resourceURL.getPath()));
}
这完美的作品,当我运行它通过NetBeans的,但是当我生成项目,并尝试从jar文件运行它不抓取文件。
我已验证默认文件正在构建并存在于上述相同的文件结构中。
如果你能帮助我解决这个问题,我将非常感激,因为我不知道是什么让它不能工作。谢谢。
我猜测/ src/defaultFiles实际上在你的jar中? – gorjusborg 2012-03-23 15:28:41
这就是我所相信的,正如在我的dist文件夹中(这是程序构建的地方),只有jar文件和lib文件夹。 lib文件夹只包含库罐。 – Alex 2012-03-23 15:30:34
那么,没有理由不检查jar来查看文件是否确实在那里:)只需使用jar xvf .jar将其全部转存。但是正如Dennis R.所说的那样,你不能通过这种方式在jar文件中加载文件。您需要使用包含jar的类加载器的getResource方法之一。 –
gorjusborg
2012-03-23 15:36:11