在C#中調用Java產生的jar庫檔案的方法

來源:互聯網
上載者:User
一、將已經編譯後的java中Class檔案進行打包;打包命令JAR 如:將某目錄下的所有class檔案夾全部進行打包處理;使用的命令:jar cvf test.jar -C com/ .其中test.jar為要產生的jar包;com/ . 為指定的目前的目錄下的檔案夾,該檔案夾包括子檔案夾及class檔案;二、到IKVM官方網站下載IKVM需要的組件  http://www.ikvm.net/   ikvm-0.42.0.3.zip   ikvmbin-0.42.0.3.zip   openjdk6-b16-stripped.zip 三、設定路徑 解壓ikvm-0.42.0.3.zip,並將%IKVM_HOME%/bin添加到path中。此處的%IKVM_HOME%是指解壓後ikvm的主目錄。四、將java的jar包轉換為.dll控制項 使用的命令:ikvmc -out:IKVM.dll test.jar其中IKVM.dll為將要產生的.dll控制項檔案名稱;test.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原始碼: 1 package com.zht;
2 //要調用的Java類 
3 public class Test {
4    //要調用的Java方法 
5     public String returnString() {
6         return "Hello, zht!";
7     }
8 } C#表單原始碼:  1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Windows.Forms;
 9 using com.zht; 
10 
11 namespace KIVMTest
12 {
13     public partial class Form1 : Form
14     {
15         public Form1()
16         {
17             InitializeComponent();
18         }
19 
20         private void Form1_Load(object sender, EventArgs e)
21         {
22             Test t = new Test(); 
23             string str = t.returnString(); 
24             MessageBox.Show(str);
25         }
26     }
27 }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.