zoukankan      html  css  js  c++  java
  • 把Java代码转成c#可用的dll

    1、首先你需要到 IKVM官网 下载IKVM。http://sourceforge.net/projects/ikvm/files/需要注意的是如果你用的是.net framework2.0,那么最新版本的IKVM就不能用,你能用的是0.38.0.2版本的

          配置环境变量:右击“计算机”,选择“属性”,进入“高级系统设置”,“高级”-->“环境变量”,在path中添加“;D:Program Filesikvmbin-7.2.4630.5ikvm-7.2.4630.5in”,其中第一个“;”可选,后面“D:Program Filesikvmbin-7.2.4630.5ikvm-7.2.4630.5”为你的IKVM的路径。
          测试:通过“CMD”,输入"ikvmc",Enter以下可以看到好多提示信息。
    C#调用JAVA程序(简单篇)
    2、其次你要编写一个简单的java程序,网上最流行的一个例子:
    package com.zht;
    //要调用的Java类 
    public class Test {
       //要调用的Java方法 
        public String returnString() {
            return "Hello, zht!";
        }
    }
    3、你要把java程序打包成jar文件
    选中该项目,右击,选中“O(导出/Export)”,选择“java”-->"JAR 文件",下一步之后,选择你要打包的类文件(或包),选择“导出生成的类文件和资源”,下一步 再 下一步 ,确定。
    C#调用JAVA程序(简单篇)

    C#调用JAVA程序(简单篇)

    C#调用JAVA程序(简单篇)

    4、你要用ikvm把jar文件编译成dll文件
          CMD之后,输入“ikvmc -out:E:hello.dll E:hello.jar”,ikvmc是命令,-out:后面接输出的DLL文件,空格之后接 jar文件。
    C#调用JAVA程序(简单篇)
    5、在C#中调用DLL文件
          新建C#工程(可以是控制台程序,也可以是WinForm程序),添加引用:
    1)hello.dll  (你刚刚生成的DLL文件)
    2)IKVM.OpenJDK.Core.dll ; IKVM.Runtime.dll ; IKVM.Runtime.JNI.dll  (这三个是基本的DLL文件,其它DLL文件视情况添加)
    C#调用JAVA程序(简单篇)

        通过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();
            }
        }
    }
         运行结果如下图:
    C#调用JAVA程序(简单篇)
  • 相关阅读:
    redis集群报Jedis does not support password protected Redis Cluster configurations异常解决办法
    redis集群密码设置
    Redis 3.2.4集群实战
    Redis3.2.4 Cluster集群搭建
    redis集群环境的搭建和错误分析
    Centos iptables防火墙关闭启动详解
    动态的表格数据
    ubuntu使用抓包工具,charles
    layer结合art实现弹出功能
    禅道开源版源码安装
  • 原文地址:https://www.cnblogs.com/dachuang/p/9491810.html
Copyright © 2011-2022 走看看