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的更多相关文章

  1. java代码打包成jar以及转换为exe

    教你如何把java代码打包成jar文件以及转换为exe可执行文件 1.背景: 学习java时,教材中关于如题问题,只有一小节说明,而且要自己写麻烦的配置文件,最终结果却只能转换为jar文件.实在是心有 ...

  2. Myeclipse中把java代码导成UML类图

    Myeclipse中把java代码导成UML类图 1.右键点击项目名称,选择New-------àUML2 Model 2.给类图命名 3.导成类图 1)如果要把整个项目导成类图,则把整个项目拖到类图 ...

  3. JSmooth 将java代码打包成exe

    JSmooth 将java代码打包成exe 前言 java代码写了这么多了,但由于jdk的限制,我只能在jdk电脑上运行项目.所以最近在研究打包exe这个问题,今天终于实现了. JSmooth下载 前 ...

  4. 将Java代码打包成jar文件转换为.exe可执行程序方法

    ​ 做完学生管理系统后我想将代码打包成一个可执行程序,那样就可以直接点击在Windows下运行了,下面就跟大家分享下打包方法. 将Java的代码转换成 .exe 文件需要先把代码打包成 jar 文件然 ...

  5. 使用非java代码编程

    使用非JAVA代码     JAVA语言及其标准API(应用程序编程接口)应付应用程序的编写已绰绰有余.但在某些情况下,还是必须使用非JAVA编码.例如,我们有时要访问操作系统的专用特性,与特殊的硬件 ...

  6. Java代码签名证书申请和使用指南

    第1步 下载签名工具 Step 1: Download Signing Tools 如果您还没有签名工具,请到SUN公司网站免费下载:http://java.sun.com/j2se/,推荐下载JDK ...

  7. 01 Java 代码是怎么运行的

    Java代码运行的方式 1:在开发工具中运行 2:双击 jar 文件运行 3:在命令行中运行 4:在网页中运行 上述运行方式都离不开 JRE,也就是 Java 运行时环境.实际上 JRE 仅包含运行 ...

  8. Unity 中调用Android的JAVA代码

    首先我们要创建一个android项目 因为项目需要使用Unity提供的接口,所以需要将接口classes.jar引入至当前工程但中.接口包的所在地,打开Finder->应用程序->Unit ...

  9. 手把手教你如何把java代码,打包成jar文件以及转换为exe可执行文件

    1.背景: 学习java时,教材中关于如题问题,只有一小节说明,而且要自己写麻烦的配置文件,最终结果却只能转换为jar文件.实在是心有不爽.此篇博客教你如何方便快捷地把java代码,打包成jar文件以 ...

随机推荐

  1. JavaEE--JNDI(下,实现)

    参考:https://blog.csdn.net/ouyida3/article/details/46699023  https://www.landui.com/help/show-6158.htm ...

  2. 【每日Scrum】第五天冲刺

    一.计划会议内容 仍然在解决数据库问题 二.任务看板 三.scrum讨论照片 四.产品的状态 无 五.任务燃尽图  

  3. 我的第一次JAVA实训——校园公用房管理系统

    老铁们,昨天电脑没电了.这是上周答应的大项目. 别打脸. 详细内容我之后再写,下面是代码地址. Github地址 附:一个寂寞 以上

  4. 和我一起从0学算法(C语言版)(三)

    第二章 暴力求解(枚举法) 第一节 小学奥数题-程序求解 观察下面的加法算式:       祥 瑞 生 辉   +   三 羊 献 瑞 -------------------    三 羊 生 瑞 气 ...

  5. Eclipse上传Git远程仓库,并且增加Maven Dependencies

    前言: 遇见问题了,公司一台电脑,家里一台电脑,当有项目在进行的时候,又不想把电脑背来背去的,就像一个人玩单机,这个时候GIT就可以帮你解决这个问题.当GIT准备就绪的时候,新的问题来了git下载下载 ...

  6. 使用cropper插件裁剪并上传图片(Spring mvc)

    cropper是一款使用简单且功能强大的图片剪裁jQuery插件.该图片剪裁插件支持图片放大缩小,支持图片旋转,支持触摸屏设备,支持canvas,并且支持跨浏览器使用. cropper有两种方式上传截 ...

  7. 《C++语言导学》小记

    我看的这本是Bjarne Stroustrup写的,南开大学的杨巨峰和王刚译的.这本书不适合初学者看,我就是大概翻了翻其中感兴趣的章节. 这本书第14章的标题是“历史和兼容性”,这节内容我看了收获很深 ...

  8. XssFilter EscapeUtil

    package com.ruoyi.framework.config; import java.util.HashMap; import java.util.Map; import javax.ser ...

  9. sqlserver修改某列为自增

    sqlserver如果建表的时候不设自增,之后是没法直接修改的,需要先删再重设: alter table 表名 drop column ID alter table 表名 add ID int ide ...

  10. sql字符串常用函数

    1.replace  REPLACE(String,from_str,to_str) 即:将String中所有出现的from_str替换为to_str 2.left  left(String,2) 从 ...