公司要做个跟设备打交道的web系统,需要java调用dll。搞java的同事说JNative看起来挺好使的,找俺帮忙调通。用的是1.3.1版本

  1. 环境设置。

    JNative的调试信息需要打开才能更清楚些,要不总是说没加载库,跟没说一样。

    System.setProperty("jnative.debug", "true");

    如果调试信息里有System.LoadLibrary(),说明没有加载JNativeCpp.dll,指定全路径即可,双斜杠哦。

    System.setProperty("jnative.loadNative", "D:\\Test\\JNativeCpp.dll");

  2. lib库路径问题
    • windows

      在windows下需要把调用的dll路径设置到环境变量PATH中,除非你不介意拷到win32中,dll依赖的库也得在PATH或win32中。

    • linux

      linux下同样需要设置环境变量,编辑bashrc,添加 export LD_LIBRARY=so路径,依赖的库也得在PATH中,除非都放在/usr/lib/下

  3. lib库名称问题

    无论linux还是windows在JNative的构造函数中的lib库名字为库全名,包括扩展名dll、so,而且so需要包括前面的‘lib’,貌似与网上说的不太一样。

  4. 资源释放问题

    有些设备需要先初始化在操作,最后释放,所有功能都分散在不同函数中,JNative需要有个静态的实例,每次创建调用函数时lib库依旧是加载的。

顺便吐槽下公司部署前2天才通知说在linux下部署,可怜我这linux、java双小白。。。。。。

转载于:https://www.cnblogs.com/u0mo5/p/4049646.html

JNative用法注意事项相关推荐

  1. createprocess重启程序_C++_VC程序设计中CreateProcess用法注意事项,对于windows程序设计来说,启动 - phpStudy...

    VC程序设计中CreateProcess用法注意事项 对于windows程序设计来说,启动一个进程有三种方法:WinExec,ShellExecute,CreateProcess.这里仅对Create ...

  2. matlab画中国近海有效波高时遇到的问题及m_map的用法注意事项

    matlab画中国近海有效波高时遇到的问题及m_map的用法注意事项 数据问题 这个数据很不友好,它的纬度从大到小,经度又从小到大. 这需要笔者转置数据. 先定位数据在矩阵的位置.最高的纬度是50°N ...

  3. c语言vector+erase用法,vector.erase用法注意事项

    转自->这里 vector::erase():从指定容器删除指定位置的元素或某段范围内的元素 vector::erase()方法有两种重载形式 如下: iterator erase(iterat ...

  4. 【Kotlin】扩展接收者 与 分发接收者 ( 类内部扩展用法 | 注意事项 | open 修饰扩展 )

    文章目录 I . 类内部扩展其它类 II . 扩展接收者 与 分发接收者 注意事项 III . open 修饰 分发接收者 类型中的扩展 I . 类内部扩展其它类 1 . 扩展函数 / 属性声明的位置 ...

  5. union用法注意事项

    union 为组合查询 使用情况: 在一个查询中从不同的表中返回结构数据 对一个表执行多个查询,按一个查询返回数据 union(合并重复项),union(不合并重复项) 注意事项: union中的每个 ...

  6. c++ 在函数中传递数组和sizeof用法注意事项

    2019独角兽企业重金招聘Python工程师标准>>> 通常,指向数组第一个元素的指针会传入函数,同时还需传入数组的大小(后面会详细解释) void by_pointer(int * ...

  7. Control.Invoke用法注意事项

    control.invoke主要用于在非Ui线程更新控件,这里要注意的是,当ui线程阻塞时,在非Ui线程中的control.invoke也会阻塞,control.invoke会一直等到Ui线程有空闲了 ...

  8. Bitset 用法(STL)

    std::bitset是STL的一个模板类,它的参数是整形的数值,使用位的方式和数组区别不大,相当于只能存一个位的数组.下面看一个例子 [cpp] view plaincopy bitset<2 ...

  9. 3rd 逻辑运算符的基本用法

    03.01_Java语言基础(逻辑运算符的基本用法)(掌握) A:逻辑运算符有哪些 &,|,^,! &&,|| B:案例演示 逻辑运算符的基本用法 注意事项: a:逻辑运算符一 ...

最新文章

  1. java日志学习笔记
  2. Win10 TensorFlow(gpu)安装详解
  3. 转 使用putty从linux主机上面往windows主机下面拷贝文件
  4. 运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统(二)
  5. hust1347(归并排序求逆序对)
  6. ICPR 2020国际学术竞赛:大规模无噪声精细商品图像识别
  7. 自动论文生成器 python_python生成器
  8. 多些时间能少写些代码
  9. 【英语学习】【Level 07】U06 First Time L3 Subway everyday
  10. Python通过WMI读取主板BIOS信息
  11. 【Java架构:基础技术】一篇文章搞掂:MySQL
  12. Hessian 3.2.0的两个bug(转)
  13. 阿里php开发规范,【PHP开发规范】老生常谈的PSR开发规范你懂多少?
  14. Dev c++下载、安装、使用教程(文件、项目)
  15. 基于FFMPEG+Python实现大视频分隔+水印+合并片头片尾
  16. 数据结构-银行业务模拟系统
  17. 海康威视监控摄像头连接电脑教程
  18. 服务器安装win7系统不停重启,win7系统下路由器总是每天都自动重启如何解决
  19. 华为二手价格表(最新2022.2.16)
  20. QQ聊天对话框内 聊天者昵称,发送者昵称 的字体颜色怎么设置

热门文章

  1. Java Word转Html
  2. gdb 调试 TuMediaService
  3. 学习过程中的一些想法
  4. Google Go Programming In Eclipse
  5. Oracle手边常用70则脚本知识汇总
  6. zabbix2.2入门教程之编译安装(一)
  7. 在Asp.net网页中使用接口
  8. DataTable.Compute功能
  9. 数据库小知识点(一直更新)
  10. 面向对象分析的三个模型与5个层次