使用JNA调用so文件造成weblogic服务器down掉的问题

这个问题这两周一直困扰我,查了各种资料用尽各种办法都无法解决,现在只有希望大家能给我提供解决思路:
问题描述:
在项目上为了保证加密算法的一致性,程序中会使用jna加载so动态链接库,并调用其中相关方法来加解密,现在的情况是第一次交易的时候加解密都是成功的,然后再发起一个交易就会造成weblogic服务器down掉。报错的hs_err_pid11047.log日志中部分内容:
#

An unexpected error has been detected by HotSpot Virtual Machine:

#

SIGSEGV (0xb) at pc=0x00000000, pid=11047, tid=2143591344

#

Java VM: Java HotSpot(TM) Server VM (1.5.0_12-b04 mixed mode)

--------------- T H R E A D ---------------

Current thread (0x0847e4a0): JavaThread "RMI RenewClean-[82.0.98.36:58338]" daemon [_thread_in_Java, id=11509]

siginfo:
[error occurred during error reporting, step 90, id 0xb]

Stack: [0x7fbc9000,0x7fc4a000), sp=0x7fc47df4, free space=507k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
后面还有很多就不贴了。其中SIGSEGV标志代表出错的时候正在调用外部的动态链接库,但很奇怪的是没有指明是哪个动态库,加载动态链接库的方法我是写在静态块中的。应该不会出现第二次调用的时候加载的动态链接库失效的问题。
希望大家能给我提供解决思路,谢谢。

3个回答

  1. so加static是印象中的,我没有了解过
  2. 你开一个进程,自己再去调用那个进程,你调用的不会挂,被调用的可能挂,挂了不影响调用者

都so的线程请加上static

还有一点,就是要保证so文件的正确。一般来说会再开一个进程,通过exec来调用这个进程

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!