在C#中调用 java的函数(C#与java结合使用)ivkm相关包
在C#中调用 java的函数: 一、简要步骤: 首先,编写 java代码,并用java编译工具编译生成jar或class; 然后,使用 ikvmc 将jar或class文件编译成DLL文件; 最后,建立C#工程,调用DLL。 二、准备工作: 1、下载IKVM需要的组件: openjdk6-b12-stripped.zip ikvmbin-0.40.0.1.zip ikvm-0.40.0.1.zip 2、 到mono官方网站(http://www.go-mono.com/mono-downloads/download.html)下载: mono-2.4.2.3-gtksharp-2.12.9-win32-3.exe。该文件较大,有70多M。下载该文件的主要目的是提取其中的IKVM.OpenJDK.ClassLibrary.dll,该文件有30M。(当然也可以在Google上搜索下载。) 3、解压ikvm-0.40.0.1.zip,然后将其中的bin目录的全路径添加到Path环境变量中; 4、安装mono-2.4.2.3-gtksharp-2.12.9-win32-3.exe,然后在其路径下找到IKVM.OpenJDK.ClassLibrary.dll,默认是:C:/Program Files/Mono-2.4.2.3/lib/mono/ikvm; 5、将在第3、4步中找到的以下四个DLL拷出存放,目的是便于C#工程引用: IKVM.OpenJDK.ClassLibrary.dll IKVM.OpenJDK.Core.dll IKVM.Runtime.dll IKVM.Runtime.JNI.dll 准备工作完毕。 三、测试实例:(很简单的代码) 1、 建立一文本文件:demo.java,输入代码如下: package test; public class demo { public String Message = "Hello from Java!";//java 属性 public String Function() //java 方法 { String str1="Test "; String str2="OK!"; return str1+str2; } } 2、进入CMD,cd到demo.java所在路径: 先执行:javac demo.java 再执行:ikvmc demo.class 至此,应该已经生成 demo.dll 文件了。 2、 新建C#的Form程序,在“解决方案”--“引用”中添加demo.dll和上面所提到的四个IKVM的dll; 3、 在按钮的响应事件中添加如下代码: private void button1_Click(object sender, EventArgs e) { test.demo td = new test.demo(); MessageBox.Show(td.Message); MessageBox.Show(td.Function());//调用java的方法 } 4、编译,运行,OK。
- 1
- J_24K2016-04-23方法不错,不过这个0.4版本的在jdk1.8下会运行出错的
- j3695542362019-10-28很久以前下载的,当时调用都是成功了的
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助