JPA 打包 jar 的问题
由于有一个工程用到了 jpa ,当我在 eclipse 下运行,一切都正常。但当打包成一个 jar 文件后,运行出现问题。具体是由表现如下:
对于这个文件
当在 eclipse 下运行,程序可以执行出第 149 行日志,并且一切都很正常。但当把工程打包成一个 jar 文件后,发现程序运行到 148 行日志后,就不动了。当前线程好像就一直堵塞在那了。
解决办法是,将外部引用的 jar 包单独放在一个文件夹下。
此时运行的日志为:
2011-6-20 22:16:43[ pool-1-thread-1][DEBUG](JarVisitorFactory.java:73) JAR URL from URL Entry: jar:file:/E:/%e5%a4%a7%e6%a3%9a%e5%ae%88%e6%8a%a4%e9%a1%b9%e7%9b%ae%e7%bb%84/%e9%80%9a%e8%ae%af%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%a8%8b%e5%ba%8f/%e6%9c%8d%e5%8a%a1%e7%a8%8b%e5%ba%8f%20v3.0/msgserver3.0.jar!/META-INF/persistence.xml >> file:/E:/%e5%a4%a7%e6%a3%9a%e5%ae%88%e6%8a%a4%e9%a1%b9%e7%9b%ae%e7%bb%84/%e9%80%9a%e8%ae%af%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%a8%8b%e5%ba%8f/%e6%9c%8d%e5%8a%a1%e7%a8%8b%e5%ba%8f%20v3.0/msgserver3.0.jar
2011-6-20 22:16:43[ pool-1-thread-1][DEBUG](Ejb3Configuration.java:562) Detect class: true; detect hbm: true
原来在 eclipse 下运行日志为:
2011-6-20 22:06:43[ pool-1-thread-1][DEBUG](JarVisitorFactory.java:73) JAR URL from URL Entry: file:/E:/Softwares/Genuitec/workspace/WSN_MsgServer%20V3.1/bin/META-INF/persistence.xml >> file:/E:/Softwares/Genuitec/workspace/WSN_MsgServer%20V3.1/bin
2011-6-20 22:16:43[ pool-1-thread-1][DEBUG](Ejb3Configuration.java:562) Detect class: true; detect hbm: true
在Eclipse环境下使用JPA的工程运行正常,但打包成jar后,程序运行到某行日志后堵塞。解决方案是将外部jar包放在单独文件夹下。日志显示打包前后JAR URL路径不同,可能影响了资源加载。
228

被折叠的 条评论
为什么被折叠?



