jni调用dll扩展程序直接配置-Djava.library.path来指定dll所在目录即可以加载到dll,但是如果dll要依赖其它dll的时候会提示 Can't find dependent librarie即找不到dll的依赖库,这种情况可以将需要依赖的dll放到项目根目录下或者jdkbin目录下解决,但是想要导出jar包供其它调用就不行了,而且这种解决方法也不适用,总不能每次调用都把dll文件复制到根目录下,这时该如何处理?
1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
churuxu 2019-11-19 18:07最佳回答 专家已采纳系统dll,不用管,
运行库dll,发布时带一个运行库安装包(vcredistxxxx),或者编译自己的dll时采用静态链接去除运行库依赖
第三方dll 和 你自己开发的dll,都放在一起,打包进jar里,运行时解压到xxx目录下系统dll,指的是操作系统自带的
类似kernel32.dll user32.dll等运行库dll,指的是c/c++运行库相关的
类似msvcpxxx.dll ms-xxxx-xxx-1-0.dll等采纳该答案 已采纳该答案 专家已采纳评论解决 无用打赏举报微信扫一扫
分享评论登录 后可回复...
报告相同问题?
提交
相关推荐 更多相似问题
- 2019-11-19 15:54回答 1 已采纳 系统dll,不用管, 运行库dll,发布时带一个运行库安装包(vcredistxxxx),或者编译自己的dll时采用静态链接去除运行库依赖 第三方dll 和 你自己开发的dll,都放在一起,打包进
- 2018-08-29 04:31回答 4 已采纳 兄弟,也许你正好需要这个https://blog.csdn.net/whustyle/article/details/49123933
- 2019-02-19 06:33回答 1 已采纳 It seems to be related to a bug inside Golang itself. There is currently a Pull Request opened run
- 2017-06-15 18:12完整的实现java跨平台调用C程序源码,包含JAVA源码和C源码以及编译后的demo dll。将dll放到jdk bin目录下,java 项目可以直接运行。若要修改dll可以,修改C源码后重新编译生成dll。该demo处理了多线程调用c,全局...
- 2021-02-26 11:48宋世泊的博客 JNI是Java自带的方法,不需要引入第三方jar包,优点是因为是java自带的方法,兼容性较好,缺点就是代码书写繁琐新建Java项目Test --> 新建测试类TestNative,声明本地方法,代码如下:package com.test;public ...
- 2015-11-26 12:06Java通过JNI调用DLL动态库,亲测试编写
- 2015-11-12 09:50回答 2 已采纳 考虑下jni,编译成so后,在java程序中引入即可 static{ System.loadLibrary("AirPos"); }
- 2009-01-25 01:34回答 1 已采纳 [quote]那JAVA中怎样来调用呢,DLL我是没办法更改的!试过用JNative、JNA调用,都没有调用指针函数的示例.自己用C写一个DLL间接调用估计可以,但C写DLL不会...[/quote]
- 2019-08-22 17:23回答 1 已采纳 修改环境变量,改为64位jdk的配置
- 2021-03-10 05:57weixin_39959369的博客 简单来说:0-Java 建立需求函数模板1-使用 javah xxx.class 工具生成.h文件2-把jni.h、jni_md.h和刚才生成的.h文件放到VS建立的dll空项目里3-生成可以调用的dll大功告成详细点:例如你要用dll 实现一个Max()函数的...
- 2021-02-12 15:29音乐与音响的博客 准备工作:(1) jni4net 是一个开源的项目(2) jni4net-0.8.8.0.zip 中是工具的所有文件,包含示例下载后解压是这样的打开lib下边有你需要用到的jar包和dll这是关键。创建C#程序:打开vs创建一个类库com.demo.lib项目...
- 2019-04-13 19:44lucky-peach的博客 JNI简介: JNI是Java Native Interface的缩写,它提供了若干的API实现了...JNI 允许Java程序调用其他语言编写的程序或者代码库, 比如C/C++。Java 在内存管理和性能上有一定的局限,通过JNI我们就可以利用Native程...
- 2020-05-06 14:14回答 1 已采纳 这个需要先用c++编译器把lib编译为dll/so,再用java调用
- 2010-10-25 23:02回答 1 已采纳 到这下个~ http://download.it168.com/248/266/40690/
- 2009-06-16 14:39回答 4 已采纳 LZ请看这篇文章 [url]http://blog.tiantiansoft.com/user1/908/archives/2007/3334.html[/url]
- 2011-05-17 00:04[JAVA]使用JNI技术实现JAVA程序调用dll、[JAVA]使用JNI技术实现JAVA程序调用dll
- 2017-03-29 09:40本资源包括JAVA工程,C++工程,C#dll测试工程
- 2021-03-08 23:45枫声竹韵的博客 使用JNI,需要为C\C 生成JAVA调用约定头文件,并对标准windows DLL源码进行适当修改。以下以一个简单的例子演示整个过程。环境:win7 64位操作系统,JDK1.7 64位,vs2010(安装x64编译支持)。一,编写native声明的类 ...
- 2015-05-28 07:53回答 3 已采纳 MFC 这个东东,只有 Windows 平台能用,其它平台没有 MFC 的动态库支持的。 JNI 调用的库,也只能是针对 Android 平台编译的
- 2019-03-17 01:37NULL 博文链接:https://leesonhomme.iteye.com/blog/549034
- 没有解决我的问题, 去提问