C#调用java的jar文件的方法

一、将已经编译后的java中Class文件进行打包;

Eclipse或myeclipse进行Export选择jar即可。或者使用命令

    如:将某目录下的所有class文件夹全部进行打包处理;

   使用的命令:jar cvf test.jar -C com/ .

  其中test.jar为要生成的jar包;com/ . 为指定的当前目录下的文件夹,该文件夹包括子文件夹及class文件;

  cmd->到java class文件目录下->jar  cvf    要生成的jar包名称.jar    java类文件名.class

 

二、到IKVM官方网站下载IKVM需要的组件http://sourceforge.net/projects/ikvm/files/ikvm/

  ikvmbin-0.46.0.1.zip

若不能下载,可以在我的资源库中查找,我已上传到我的csdn资源库中

三、设置路径

解压ikvmbin-0.46.0.1.zip,并将%IKVM_HOME%\bin添加到path中。此处的%IKVM_HOME%是指解压后ikvm的主目录。

四、将java的jar包转换为.dll控件

使用的命令:ikvmc -out:D:\com.J2Csharp.dll D:\com.J2Csharp.jar

其中com.J2Csharp.dll 为将要生成的.dll控件文件名;com.J2Csharp.jar为之前打包好的jar包文件。

五、在C#项目中添加所需的控件

1、新建一个C#.NET项目,首先添加一下必须的DLLs

  %IKVM_HOME%\bin\IKVM.OpenJDK.Core.dll

  %IKVM_HOME%\bin\IKVM.Runtime.dll

  %IKVM_HOME%\bin\IKVM.Runtime.JNI.dll

2、添加已生成的.dll文件

将之前生成好的.dll文件加载到C#项目中

六、测试

在C#项目中使用java类,其方法同java。但对包的引用使用C#的语法using

源代码:

Java源代码:

package com;

public class J2Csharp { public String toString(){ return "88888888888"; } }

C#窗体源代码:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using com; namespace CJTtst { public partial class Form1 : Form { public Form1() { InitializeComponent(); }

private void Form1_Load(object sender, EventArgs e) { J2Csharp js = new J2Csharp(); MessageBox.Show(""+js.toString()); } } }

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。