C#调用Java代码的方法介绍
c#直接调用java代码,需要ikvmbin-0.44.0.5.zip。下载地址:
1.下载并解压
2.配置环境变量:
在path中添加%ikvm_home%\bin,ikvm_home为解压后的ikvm的主目录。在dos界面,输入"ikvm"命令,测试是否配置成功
3.编写java代码(java代码,要放在指定的package下,不要放在默认包下):
package com.xyy.csharp;
import java.util.arraylist;
import java.util.list;
public class testmain {
//获得集合
public list<demo1> getlists(){
list<demo1> lst=new arraylist<demo1>();
demo1 d=new demo1();
d.setid(1);
d.setname("admin");
demo1 d2=new demo1();
d2.setid(2);
d2.setname("sa");
lst.add(d);
lst.add(d2);
return lst;
}
//获得字符串
public string getstring(){
return "我是字符串";
}
//获得对象
public demo1 getobject(){
demo1 demo=new demo1();
demo.setid(1);
demo.setname("admin");
return demo;
}
//获得boolean
public boolean getboolean(){
return boolean.true;
}
//在控制台输出
public void systemoutprint(){
system.out.println("我是控制台输出语句");
}
}
5.将java项目打成jar包(test.jar)
6.使用命令,将jar包打成dll:ikvmc -out:ikvm.dll test.jar
7.新建c#项目,引入以下三个dll:
%ikvm_home%\bin\ikvm.openjdk.core.dll
%ikvm_home%\bin\ikvm.runtime.dll
%ikvm_home%\bin\ikvm.runtime.jni.dll
引入刚刚打包的ikvm.dll
8.
9.输出结果:
10.c#不能直接接收java返回的集合,这里就没深入研究了
上一篇: php while循环控制的简单实例