导出项目后的Java资源
我已经完成了一个java应用程序,其中包含一些图像作为资源,如下所示: ->src ->资源 ->图像 为了访问这些资源,我使用了getClass().getResource(“/resources/images/img.jpg”),当我在eclipse上时,这很好,但是当我将项目导出到jar时,路径会更改为这种类型:“jar:C:/path/deployed.jar!/resources/images/img.jpg” 我做错了什么?是否可以在一个jar中导出所有项目 还有一个问题,这些资源包括一个derby db,当部署在jar文件中时,它也不能工作导出项目后的Java资源,java,resources,jar,derby,Java,Resources,Jar,Derby,我已经完成了一个java应用程序,其中包含一些图像作为资源,如下所示: ->src ->资源 ->图像 为了访问这些资源,我使用了getClass().getResource(“/resources/images/img.jpg”),当我在eclipse上时,这很好,但是当我将项目导出到jar时,路径会更改为这种类型:“jar:C:/path/deployed.jar!/resources/images/img.jpg” 我做错了什么?是否可以在一个jar中导出所有项目 还有一个问题,这些资源包
谢谢尝试使用getResourceAsStream()而不是getResource()来访问jar文件中的资源 还有一个问题,这些资源包括一个derby db,当部署在jar文件中时,它也不能工作
正如Hovercraft所说,Derby DB(意思是数据文件,而不是实现)不会从jar开始。不插入任何内容也没关系,Derby需要打开这些文件进行编写。它们必须位于您有写权限的目录中。我无法想象Derby在jar文件中会如何工作,因为jar文件中的资源是只读的。db只用于读取数据,没有insert。