WEB开发网
开发学院软件开发C语言 在C#中调用Java代码 阅读

在C#中调用Java代码

 2009-06-13 08:31:40 来源:WEB开发网   
核心提示:到IKVM官方网站下载IKVM需要的组件 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的主目录,

到IKVM官方网站下载IKVM需要的组件

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的主目录。

到Debian IKVM下载IKVM.OpenJDK.ClassLibrary.dll。

或者到rayfile去下载data.tar.gz。这个文件可以直接用winrar解压。

你需要下载一个简单的工具undeb去解压.deb文件。

也可以到rayfile下载

解压ikvm_0.38.0.2+dfsg-2_all.deb文件。

新建一个Java文件 package com.helloikvm.simple;

public class SimpleReturnString {
    public String returnString() {
        return "Hello, IKVM!";
    }

    public void throwException() throws Exception {
        throw new Exception("Hello, Exception!");
    }
}

编译SimpleReturnString文件,然后将其打包成一个jar文件,例如IKVM.jar.

使用ikvmc -out:IKVM.dll IKVM.jar。你现在应该在IKVM的目录下面看到一个IKVM.dll文件。

新建一个C#.NET项目,首先添加一下必须的DLLs

%IKVM_HOME%\bin\IKVM.OpenJDK.Core.dll

%IKVM_HOME%\bin\IKVM.Runtime.dll

%IKVM_HOME%\bin\IKVM.Runtime.JNI.dll

IKVM.OpenJDK.ClassLibrary.dll[这的DLL在ikvm_0.38.0.2+dfsg-2_all.deb\usr\lib\cli文件夹中。或者也可在data.tar.gz中的usr\lib\cli中找到。参看第三步和第四步]

添加第10步生成的IKVM.dll到C#.NET项目中,然后using %package_name%就可以实现对Java的调用。

编写C#代码 // import java package

using com.helloikvm.simple;

namespace IKVMTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void btnTest_Click(object sender, EventArgs e)
        {
            // Initialize the Java method
            SimpleReturnString simpler = new SimpleReturnString();
            // Call Java method
            String returnString = simpler.returnString();
            txtTest.Text = returnString;
        }
    }
}

Tags:调用 Java 代码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接