在NetBeans(8.1)中添加文件的位置



我已经创建了一个Java Swing应用程序,在我尝试分发它之前,它似乎工作得很好。我正在使用一个html文件(位于项目根目录),但是,当为项目生成最终的.jar时,无法找到该文件(以及各种<src>标记中的图像文档),因为当前工作目录已从根目录更改为root/dist。

是否有一种正确的方法将文件(如。html)包含到项目中,以便它们可以包含在。jar中?

是的,有这样的方法。

对于嵌入文件:

你可以把它们放在你的NetBeans项目包中,并通过this.getClass()获得它们的位置。getResource (String路径).getPath ()它是一个字符串,可以作为参数传递,以创建File对象。当指定路径时,必须以/开头,这意味着从根目录开始。包装动物。Dog有husky.txt,你可以使用路径/animal/Dog/husky.txt)

对于外部文件:

您可以使用类似your_class.class.getProtectionDomain().getCodeSource().getLocation().getPath();要获取.jar运行的位置,

感谢大家的帮助。我的问题的解决方案实际上是不同的,所以我把它贴在这里来完成这篇文章。实际上,我使用了错误的类装入器,对我来说,正确的类装入器是通过以下方式获得的:

ClassLoader loader = Thread.currentThread().getContextClassLoader();

一旦我使用了这个加载器,所有都神奇地工作了。

相关内容

  • 没有找到相关文章

最新更新