之前總覺得C#和Java可以交互應用,但是由于時間以及其他方面的原因,一直沒有調研。今天抽空搜了一下,終于折騰出來了。
以下是我自己就C#和Java整合的一些提問和分析,如果有不對的地方,請路過的各位大蝦給予指出。3Q!
問題來了:
1、C#和Java如何整合?
2、為什么C#(.Net)要和Java整合?
3、Java和C#整合時,Java主要扮演什么角色?C#扮演什么角色?
答案一一揭曉:
1、C#和Java整合大致有4條路可以走。
1.1 把Java包轉換為DLL或者EXE后注冊為com組件,之后調用;
1.2 使用web service;(http://www.codePRoject.com/Articles/32313/How-to-invoke-Java-web-service-in-asp.net-using-C)
1.3 使用中間件;比如一個商業的中間件:http://j-integra.intrinsyc.com/;
1.4 使用 IKVM.NET,這是一個在.net 下實現的Java VM,所以在經過一個轉換后,直接跑Java的東西;
(以上4點,是我在網上搜的)
我主要說第四點:使用IKVM.NET。
a:下載ikvm-0.40.0.1.zip;ikvmbin-0.40.0.1.zip;openjdk6-b12-stripped.zip;
解壓ikvm-0.40.0.1.zip,并將%IKVM_HOME%/bin添加到path中。此處的%IKVM_HOME%是指解壓后ikvm的主目錄。
b:建立一個JavaProject,自定義包、類、需要透露給外界的方法,然后、將這個JavaProject打包成jar文件。(eclipse和myeclipse都自帶的,或者你可以顯擺一下,用黑框框敲幾個代碼整)。
c:貍貓換太子:jar>>dll
打開黑框框(即:win+r,cmd,進入到%IKVM_HOME%/bin的目錄下),
執行:ikvmc -out:dllFileNameOrPath.dlljavaFileNameOrPath.jar
新聞熱點
疑難解答