.so 和 .dll文件

记得很早之前有一个很流行的病毒,就是以.dll为后缀的文件制作而成,当时只是通过微软更新的系统,修复漏洞就没管了,对当时MAC系统没受到攻击也没有在意,只知道是说这个是windows的漏洞,所以Mac系统都没事。还有一次接触dll是在刚开始使用tomcat的时候,运行tomcat报错,但是可以成功启动tomcat,当时觉得非常奇怪,就上网查,说缺少一个dll文件,然后当时就去查了下dll文件是什么,但是也仅仅限于此而已,后来也就扔下不管了。直到今天因为工作的问题,才又一次去查dll相关的东西,所以,这一次就不能再和以前一样只是看一眼就扔了,必须得记录下来。

.dll与.so

今天有一个功能的实现需要用到ca证书,因为没有接触过ca证书,就直接上服务器上去取了相关文件(项目在windows下开发,在linux上部署)。然后放到本地环境。接着做单元测试的时候,很好,直接gg,报错:cannot find xxx.dll,找不到jni。 
我一看dll,这不是我以前看过的嘛,动态链接库文件嘛,怎么会找不到呢,然后找到相关的文件路径,一看,蒙蔽了,路径下压根没有dll结尾的文件呀,什么鬼呀。只有几个so为后缀的文件,然后上网搜索,才发现.so是linux下使用的动态链接库的文件。那么接下来,就开始今天的正题了。

  • .so(shared object) 
    Linux中的.so文件 是动态链接的产物 ,也就对应着Windows下的dll。也大多是c/c++编写的,我们Java程序员一般只需要知道怎么用这个so文件就可以了,诚然,我们需要注重基础和原理,不过还是没有必要过早的去研究太多别的语言的东西,还是先好好弄明白自己的大Java吧。
  • ddl 
    ddl是windows OS下的动态链接库,也是大多由c/c++编写,我们只需要知道怎么调用,怎么调用呢,掉过JNI。JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)。从Java1.1开始,JNI标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值