C#调用java代码(IKVMC)

参考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

using test_pkg

就可以调用java代码了;





你可能感兴趣的:(C#调用java代码(IKVMC))