您的位置:首页 > 编程语言 > C#

C#调用java代码(IKVMC)

2016-05-14 16:28 495 查看
参考1:http://www.cnblogs.com/Jack-Blog/p/4710848.html?utm_source=tuicool&utm_medium=referral

参考2:http://www.tuicool.com/articles/EZJ7zqR

环境:

jdk-7windows-x64 (友情提示:不要用最新版的jdk, jdk1.8应该不行)

eclipse-jee-kepler-SR2-win32-x86_64

1.到http://www.ikvm.net/下载ikvm;

不会下载的到这里下:http://download.csdn.net/detail/threadroc/9520165

下载完毕后解压,我的解压目录:D:\workspace\java\ikvm-7.2.4630.5

2.设置ikvm环境变量

右击我的电脑->属性->高级系统设置->环境变量;

在系统变量下的path添加 D:\workspace\java\ikvm-7.2.4630.5 (友情提示:别忘了分号)

3.导出jar包

你的项目必须有包名假设为test_pkg

在eclipse中选中你要导出jar的项目->右键->Export->选中Java文件夹下的Jar file->Next->一路Next->Finish;

4.jar转dll

新建一个文件夹名为[temp],文件夹里新建一个名为[cd.bat]文件,文件内容是cmd

把你刚才导出的jar包复制到该文件夹;

双击cd.bat运行,

输入ikvmc -out:Test.dll Test.jar (含义是将Test.jar转换为Test.dll, [Test]换成你的包名)

如果你的java项目引用了第三方包. 比如我引用了一个叫abc.jar和qwe.jar的包

你还需要用命令

ikvmc -out:abc.dll abc.jar 将abc.jar包转换为abc.dll

ikvmc
-out:qwe.dll qwe.jar 将qwe.jar包转换为qwe.dll

然后用ikvmc -target:library Test.jar -r:abc.dll -r:qwe.dll
(意思就是将Test.jar转换为Test.dll,并引用了abc.dll和qwe.dll)

5.C#调用

C#引用IKVM.OpenJDK.Core.dll IKVM.Runtime.dll IKVM.Runtime.JNI.dll IKVM.OpenJDK.ClassLibrary.dll

以上几个可以在ikvm安装目录找到,找不到的在此下载:http://download.csdn.net/detail/threadroc/9520211

最后再引用Test.dll和与其相关的jar包编译成的dll就可以了.

using test_pkg

就可以调用java代码了;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: