c#直接調用java代碼,需要ikvmbin-0.44.0.5.zip。下載地址:
1.下載并解壓
2.配置環境變量:
在path中添加%IKVM_HOME%/bin,IKVM_HOME為解壓后的IKVM的主目錄。在dos界面,輸入"ikvm"命令,測試是否配置成功
3.編寫java代碼(java代碼,要放在指定的package下,不要放在默認包下):
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返回的集合,這里就沒深入研究了
新聞熱點
疑難解答