在我的项目中,我使用
加载资源getClass().getResource("/package/my_reource.file").getFile()
当我在netbeans中运行项目时,一切正常,但如果我运行jar文件,我会得到FileNotFoundException,为什么?
感谢。
答案 0 :(得分:2)
您可以使用InputStream
而不是getClass().getResource("/package/my_reource.file").getFile()
你应该使用
getClass.getResourceAsStream("/package/myresource.file")
答案 1 :(得分:1)
我认为你不需要文件名。你宁愿需要它的内容。因此,请使用getResourceAsStream()
获取InputStream
并从中读取内容。
答案 2 :(得分:0)
检查你的罐子。我相信你的档案不存在。 原因取决于你如何创建你的jar。如果您使用netbeans进行操作,请检查您的设置。可能它只包含* .class文件?关于蚂蚁也一样。检查标签。
答案 3 :(得分:0)
getFile()返回getResource()返回的URL的文件路径部分 因此,如果它在Jar中,你必须阅读jar来获取文件。如果它在文件系统上,你可以使用FileInputStream读取。
如果你想获得InputStream并且你没有创建使用getResourceAsStream()
的地方