您的位置:首页 > 编程语言 > Java开发

jni Exception in thread "main" java.lang.UnsatisfiedLinkError: xxx.dll: 此操作仅在应用容器上下文中有效。

2013-10-12 14:13 976 查看
在java 程序调用dll时产生如下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: xxx.dll: 此操作仅在应用容器上下文中有效。

产生原因:

这是因为在制作dll时候,是按照如下步骤进行的:

1、方法一:

操作“ 文件 | 新建 | 项目... ”,在左侧选择“ Visual C++ | win32” ,主栏中选择“Dll(应用程序)”。下边“名称”填入“jniWin32dll”,点确定。

这样制作的dll的属性是:

vs2012中:



这种方法创建制作出来的dll就会出现如上的错误。

要想执行正确就应该按照如下的方法进行制作dll

2、方法二:

I)、操作“ 文件 | 新建 | 项目... ”,在左侧选择“Visual C++ | win32 ” ,主栏中选择“win32 项目”。下边“名称”填入“jniWin32”,点确定。

Ii)、在win32向导中,选择“Dll”。

vs2012中:



按照这样的方式制作的dll,在java 程序调用的时候就是正常的

PS:但是如果在红色方框中的“ 否” 改为 “是”,

那么制作出来的dll就又会出现如上的错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐