1、症状
如果JBoss上的两个web应用需要使用相同的JNI本地库,当第二个web应用加载JNI本地库时,就会出现Native Library xxx.so already loaded in another classloader错误
2、原因
Java虚拟机为了在JNI本地库中确保基于classloader的命名空间隔离,因而不允许一个JNI本地库被两个不同的classloader加载。而JBoss中web应用的classloader是独立的,也就是说每个web应用都有一个专属的classloader,这样就出现两个classloader加载同一JNI本地库的情况
3、解决方法
在JBoss AS中,虽然不同的web应用使用不同的classloader,但是web应用classloader的父classloader是相同的,这样根据双亲委托模型只要让父classloader加载JNI本地库就可以避免被多个classloader加载。父classloader的classpath为JBoss AS配置(default、all或minimal)的lib目录,因而只要将JNI class单独发布成jar包,并放在配置(default、all或minimal)的lib目录中,问题就可以解决
分享到:
相关推荐
2、动态加载模块时,模块的目录下与php.ini中都有一个同名so 知道上述的问题就好办了,先看php配置文件和include目录下的文件,先整理内容。然后查看extension_dir,看看这个目录下的文件与include中的文件引用路径...
编译好的rediSearch.so redisJson.so redis安装包下创建module目录,放入redisearch.so rejson.so #redis中添加引用 vim /opt/redis6/bin/redis.conf loadmodule /opt/redis/module/redisearch.so loadmodule /...
Java HotSpot(TM) Server VM warning: You have loaded library /home/hadoop/hadoop-2.5.1/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now. ...
17/09/11 14:30:49 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library Native library checking: hadoop: true /taidl/hadoop/lib/native/libhadoop.so zlib: true /lib64/libz.so.1 ...
Starting namenodes on [Java HotSpot(TM) Client VM warning: You have loaded library /hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the ...
oracle library oci.dll could not be loaded-附件资源
主要介绍了PHP Warning: Module 'modulename' already loaded in问题解决办法,本文总结了两种情况,需要的朋友可以参考下
VB api编程模块动态装入程序代码VB api dynamically loaded code programming model
The source for the CompInstall.dll can be found in github . com/project-jedi/jcl/tree/master/thirdparty/InnoSetup/CompInstall 1. Extract the zip-archive. 2. Open the package file appropriate to your ...
Navicat Premium 15 连接Oracle时提示oracle library is not loaded的问题解决,直接替换新文件就可以了
解决qt5.8连接mysql的如下问题 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7 64位ubuntu下Qt5.8连接mysql用的mysql驱动文件 使用方法 下本...
1.qt连接数据报错“QMYSQL driver not loaded”问题 2.经查询libqsqlmysql.so依赖库,需要libmysqlclient.so.20 3.里面的安装包官网可以下载到,这里是伸手党福利
Return a completely initialised control block.Ity_I1 values cannot be stored or loaded. So vex_inject_ir will load store such a value to a 4-byte container. It uses 32to1 and 1Uto32, respectively.
Re-use the existing target if it s already loaded.
Navicat 远程连接 Oracle 时提示oracle library is not loaded 所需文件
libmysqlclient.so.18=>not found qt下mysql driver not loaded
A class that models a shared library loaded by the crazy linker.
Starting namenodes on [Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /opt/hadoop-2.6.0/lib/native/libhadoop.so which might have disabled stack guard. The VM will try to fix the ...
using matlab GUI to do several operations on picture loaded..