標籤:2.0 需要 技術分享 第一個 runtime htm 情況 div 空格
1、首先你需要到 IKVM官網 下載IKVM。http://sourceforge.net/projects/ikvm/files/,需要注意的是如果你用的是.net framework2.0,那麼最新版本的IKVM就不能用,你能用的是0.38.0.2版本的
配置環境變數:右擊“電腦”,選擇“屬性”,進入“進階系統設定”,“進階”-->“環境變數”,在path中添加“;D:\Program Files\ikvmbin-7.2.4630.5\ikvm-7.2.4630.5\bin”,其中第一個“;”可選,後面“D:\Program Files\ikvmbin-7.2.4630.5\ikvm-7.2.4630.5”為你的IKVM的路徑。 測試:通過“CMD”,輸入"ikvmc",Enter以下可以看到好多提示資訊。2、其次你要編寫一個簡單的java程式,網上最流行的一個例子:package com.zht;//要調用的Java類 public class Test { //要調用的Java方法 public String returnString() { return "Hello, zht!"; }}3、你要把java程式打包成jar檔案選中該項目,右擊,選中“O(匯出/Export)”,選擇“java”-->"JAR 檔案",下一步之後,選擇你要打包的類檔案(或包),選擇“匯出產生的類檔案和資源”,下一步 再 下一步 ,確定。
4、你要用ikvm把jar檔案編譯成dll檔案 CMD之後,輸入“ikvmc -out:E:\hello.dll E:\hello.jar”,ikvmc是命令,-out:後面接輸出的DLL檔案,空格之後接 jar檔案。5、在C#中調用DLL檔案 建立C#工程(可以是控制台程式,也可以是WinForm程式),添加引用:1)hello.dll (你剛剛產生的DLL檔案)2)IKVM.OpenJDK.Core.dll ; IKVM.Runtime.dll ; IKVM.Runtime.JNI.dll (這三個是基本的DLL檔案,其它DLL檔案視情況添加)
通過using com.zht;匯入該命名空間。可以建立Test類,以及使用該類的方法returnString(); 代碼如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.zht;namespace DllTest{ class Program { static void Main(string[] args) { Console.WriteLine((new Test()).returnString()); Console.ReadKey(); } }} 運行結果如:
把Java代碼轉成c#可用的dll