码迷,mamicode.com
首页 > 编程语言 > 详细

java生成jar并用ikvm生成dll供C#调用

时间:2018-06-18 13:25:29      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:生成   文件   复制   17.   导入   进入   -o   lips   提示   

最近想尝试用C#做NB_IOT北向API接口的访问。北向API的接口的访问需要证书的双向认证,而C#不支持双向认证,所以就使用IKVM在C#中跑JAVA程序实现HTTPS请求部分。

步骤如下:

一、使用Eclipse编写好北向API请向的JAVA部分代码并打包。如图:

1、代码编写

技术分享图片

2、生成jar

技术分享图片

 

3、将项目中依赖的包添加到生成的jar中,因为生成jar时有些依赖包是不存在的,提前将依赖包加入jar中也方便使用ikvmc一次生成dll,而不需要在ikvmc中依次将依赖包导入。

 

      技术分享图片

 

二、使用ikvmc生成dll,因为北向的API使用的是JDK8以上,因此选用ikvm-8.1.5717.0版本,该版本支持jdk8

1、将生成的jar复制到ikvm-8.1.5717.0\bin中,使用命令提示符进入该目录,使用ikvmc -out:XX.dll XX.jar命令生成dll,如图:

技术分享图片

注意:该使用生成输出时不能报错否则生成不成功,报警信息可根据情况忽略。

 

三、将生成的dll与IKVM.Runtime.dll、IKVM.Runtime.JNI.dll、IKVM.OpenJDK.Core.dll拷贝到C#项目中并引用(PS:直接这里拷贝IKVM的dll老是报找不到该文件的错误,很纠结!我是通过NuGet添加对应版本的IKVM才可以的)。

编写C#的程序并调用,如图:

技术分享图片

 

运行!成功!!!!

技术分享图片

java生成jar并用ikvm生成dll供C#调用

标签:生成   文件   复制   17.   导入   进入   -o   lips   提示   

原文地址:https://www.cnblogs.com/lichengcai/p/9194918.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!