最近在做一个对java桌面应用程序项目,需要打包成同普通的二进制应用程序一样。
[1]使用eclipse 将整个项目打包成可运行的jar文件,在应用过程中发现资源文件如果不是通过inputstream来读取的话,是无法访问到的,在做项目时没有考虑到这点,所以最后只好把资源拷出来,只对类文件进行打包。
目录结构:
|-soft
|- soft.jar
|-native dll
|-jre
|-resources
|-images
原来的项目结构是
|-src
|-main
|-swingExe.java //main主文件
|-panel
|-player
|-resources
|-images
可见打包后的文件目录还是跟外界的保持一致的调用关系,另外这里提一点关于资源文件路径的问题,由于我是使用了
String rootpath = ClassLoader.getSystemResource("")来取得项目根目录的绝对路径的,在发布项目后,我发现这样
取出来的路径上有的空格会被