经过一周的努力,需要的功能总算是完成了,今天进行了打包的测试,这就需要脱离了安装环境,进行测试了。
今天上午我用fat打成jar包,结果看数据不显示,这和我以前预想的结合一直,我用的是access数据库,没有用外部的jar文件,直接用的jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=DATAURL,进行连接的。因为在程序中把数据库放到了工程的bin目录先了,所以打包后数据库也到jar包里了,这就需要从jar包中读取文件了,老师要求的时间也比较紧,只能把数据库移动到jar文件的外部,再把程序中涉及到数据库路径的部分进行修改了。由于我在刚开始没有设计好程序,这些路径我要一个一个得进行修改,不过在这次修改中,我吸取的上次的教训,首先在有main函数的类中我定义了一个static变量,这个变量用来得到access数据库的路径。在得到数据库的路径中我发现了一个问题,通过File类的gerPath函数,在调试程序中返回的是路径是以“/”+“盘符”开始的,但是如果打包成jar文件后,就是以“file:/”+“盘符”开始了,所以要进行一下判断,通过String类的StartsWith(String str)来实现,这样就可以得到外部数据库的路径了。这样生成的jar文件就可以使用了。
但是为了脱离现在的环境,到其它没有安装jak的电脑上也能运行,这就需要电脑中的java目录下的jre文件复制到我生成的jar文件的目录下,然后创建了一个批处理文件start.bat,内容是"start jre/bin/javaw -jar myjava.jar"。
这里参考了http://www.blogjava.net/lzqdiy/archive/2007/06/09/115354.html
现在的程序还是有点问题的,就是不能再中文目录和压缩包下运行,这也是需要修改的。