今天使用glassfish部署一个EJB的应用,这个EJB又引用到了第三方库,并且第三方库又使用了本地方法,需要导入两个DLL动态链接库.反反复复部署了很久,终于还是部署成功了.
一开始,我是把那两个DLL文件放到SYSTEM32下面,后来发现,当服务器起动的时候,总是提示链接错误,找不到DLL文件,我就觉得奇怪了,SYSTEM32可是默认最PATH的地方了,于是在起动的时候特意输出一句System.out.println(System.getProperty("java.library.path")),发现还真的没有SYSTEM32文件夹,它输出的尽是一些glassfish下面的一些目录,什么bin啊,lib目录啊,后来把这两个dll文件放到这些里面以后,问题又来了,抛出一个错误,NoClassDefFoundError,没有此类的定义,天啊,第三方的库我可是都打进了EJB的那个JAR包了,然后它不会自己找?无语了,只有把那三个第三方的JAR包,放到glassfish认为的lib目录下,终于完全起动好了.
小结:1,不知道EJB的JAR包能不能把第三方的库打入JAR包里面,以前写enterprise application的时候,JAR包是可以包进去的,不过一直都是用netbeans的自动打包自动部署功能,所以一旦脱离了netbeans,都不知道该怎么办了,鬼知道netbeans要打包的时候,搞了一些什么鬼东西.
2,为什么system32的PATH,glassfish就是不认呢?人才,确实是人才.
今天心情不太好,所以瞎写了几下,做为记录,glassfish还是很牛的,只是我不会用罢了.
尽管千里冰封
依然拥有晴空
你我共同品味JAVA的浓香.
posted on 2008-08-07 22:55
千里冰封 阅读(2516)
评论(3) 编辑 收藏 所属分类:
JAVAEE 、
Netbeans