`

JAVA的class打包成dll

 
阅读更多
一、将已经编译后的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                           //这三个dll不加载是会出错的!!!
  2、添加已生成的.dll文件
      将之前生成好的.dll文件加载到C#项目中
六、测试
在C#项目中使用java类,其方法同java。但对包的引用使用C#的语法using
 
源代码:
Java源代码:
package com.zht;
//要调用的Java类 
public class Test {
   //要调用的Java方法 
    public String returnString() {
        return "Hello, zht!";
    }

}
 
C#窗体源代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using com.zht; 

namespace KIVMTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Test t = new Test(); 
            string str = t.returnString(); 
            MessageBox.Show(str);
        }
    }
}
 
结果:
启动C#窗口后,显示提示窗口,内容为:Hello, zht!

 

分享到:
评论

相关推荐

    java包转c#dll

    - 使用ikvmc工具,将Java的.jar或.class文件作为输入,输出将是.NET的.dll或.exe文件。 - 例如,如果你有一个名为`myjava.jar`的Java库,你可以通过以下命令将其转换为C# DLL: ``` ikvmc -target:library ...

    IKVM7.3.4830.0,将java的jar包转换为.dll控件,以使.NET可以使用

    XXXX.jar为JAVA打包好的jar包文件。 ikvmc [ options ] classOrJarfile [ classOrJarfile ... ] C#使用时以下文件必须  %IKVM_HOME%\bin\IKVM.OpenJDK.Core.dll  %IKVM_HOME%\bin\IKVM.Runtime.dll  %IKVM_...

    java调用dll必备jar包

    Java调用DLL(动态链接库)是Java编程中的一项高级技术,主要应用于Java与本地代码交互,例如在Java中利用C++或C编写的库。本文将详细介绍如何使用Java调用DLL以及所需的必备jar包。 首先,Java并不直接支持DLL的...

    jar文件 变成dll

    IKVM包括了Java Class Library的.NET实现,使得.NET应用可以调用Java类库,同时也提供了将Java应用程序和类库转换为.NET可执行文件或DLL的功能。 **转换过程:** 1. **准备环境**:首先,确保你已经下载并安装了...

    Eclipse_java文件打包成exe文件详解java代码打包exe

    ### Eclipse Java 文件打包成 EXE 文件详解 #### 一、背景介绍 在软件开发领域,尤其是对于非技术用户而言,能够直接运行的应用程序(如Windows平台下的EXE文件)相较于需要特定环境才能运行的程序(如Java应用...

    将java应用程序打包成服务

    将Java应用程序打包成服务是为了使得Java程序能够在操作系统层面作为一个服务运行,提高用户的使用体验和管理便利性。这个过程通常涉及到将Java应用与特定的服务包装工具结合,例如Java Service Wrapper。以下是一个...

    IKVM7.4.5196.0,将java的jar包转换为.dll控件,以使.NET可以使用

    XXXX.jar为JAVA打包好的jar包文件。 ikvmc [ options ] classOrJarfile [ classOrJarfile ... ] C#使用时以下文件必须  %IKVM_HOME%\bin\IKVM.OpenJDK.Core.dll  %IKVM_HOME%\bin\IKVM.Runtime.dll  %IKVM_...

    将Java代码打包为exe文件(绝对可行)

    本文将详细介绍如何将Java代码打包成exe格式的可执行文件,使得Java应用程序可以在不安装JRE(Java运行环境)的情况下运行。这一过程对于那些希望将Java程序发布给非技术用户的开发者尤为重要,因为它简化了最终用户...

    java工程如何打包

    在Java编程环境中,将一个项目打包成一个可执行的JAR(Java Archive)文件是将源代码转换为可分发形式的重要步骤。JAR文件不仅包含编译后的字节码,还可能包括资源文件、元数据和依赖库。在本文中,我们将详细探讨...

    JAVA打包成.ZIP文件

    下面是一个简化的示例代码片段,演示了如何使用Java将文件或目录打包成ZIP: ```java import java.io.*; import java.util.zip.*; public class ZipHelper { public static void createZipFile(String sourcePath...

    java调用dll

    Java调用DLL(Dynamic Link Library)是跨平台编程中的一项技术,主要应用于Java与C++或者其他支持DLL的原生代码之间交互。在Java中,通过JNI(Java Native Interface)技术可以实现对DLL的调用,从而利用C++库提供...

    JAVA调用C语言写的dll的方法和实例

    最后,将编译好的`myDll.dll`与Java应用一起打包,确保Java运行时能够找到并加载这个库。运行Java程序,Java虚拟机(JVM)会自动调用本地方法`callAddNumbers`,通过JNI桥接调用C语言的`addNumbers`函数。 总结一下...

    java打包

    本文将详细介绍如何通过 Borland JBuilder 将 Java 程序打包成 .exe 文件。 #### 准备工作 为了实现这一目标,我们需要准备以下组件: - **Borland JBuilder**:确保安装了 Borland JBuilder 版本 5 或更高版本。 ...

    打包JAVA应用成可执行exe文件

    在实际操作中,首先需要编写好Java程序,并将其编译成.class文件或者打包成.jar文件。然后,使用像J2Ewiz这样的工具,根据提供的配置信息(可能包括主类名、JVM参数、图标文件等)将Java应用打包成.exe。这些辅助...

    JAVA桌面程序打包

    在开发Java桌面应用时,最常见的就是将其打包成可执行的JAR文件。这一步骤不仅方便了程序的分发,还能够确保所有必需的类库和资源被正确地包含在内。 **准备工作:** 1. **创建JAR包:** - 在Eclipse中,选中项目...

    java使用(jna)调用c/c++第三方动态库 dll文件 所用jar包

    Java 使用 JNA(Java Native Access)调用C/C++编写的第三方动态库(DLL文件)是一种常见的技术,它允许Java程序直接与本地操作系统接口交互,而无需编写JNI(Java Native Interface)代码。JNA 提供了一种相对简洁...

    将Java代码打包为exe文件

    为了降低用户的使用门槛,可以考虑将Java应用程序打包成Windows下的可执行文件(`.exe`),这样用户只需要双击即可运行程序,无需关心Java环境的配置问题。 #### 二、打包原理 将Java程序打包成`.exe`文件主要涉及...

    JAVA打包成应用软件的方法

    【JAVA打包成应用软件的方法】 Java 语言的灵活性和跨平台特性使得开发的应用程序可以通过打包成JAR(Java Archive)文件来实现独立运行。本文将详细介绍如何将Java项目打包成可执行的应用软件,主要分为两个部分:...

Global site tag (gtag.js) - Google Analytics