在C#中调用Java生成的Jar库文件的方法
2017-10-23 18:58
447 查看
一、将已经编译后的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源代码:
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 }
如:将某目录下的所有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源代码:
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 }
相关文章推荐
- 在C#中调用Java生成的jar库文件的方法
- 在C#中调用Java生成的jar包文件的方法
- 在C#中调用Java生成的jar包文件的方法
- C#调用java的jar文件的方法(转)
- C#调用java的jar文件的方法(转)
- C#调用java类、jar包方法;eclipse生成jar包
- Java项目 使用MyEclipse打包生成jar文件方法
- Java加载jar文件并调用jar文件当中有参数和返回值的方法
- c#调用c++生成dll文件中的类方法
- c#调用matlab m文件生成的.dll时出现JVM(java虚拟内存)不足
- Eclipse中java文件生成jar文件的方法
- 一种C#生成符合Java规则的二进制文件方法
- C#调用java类、jar包方法。
- java基于jxl.jar包生成Excel文件到指定目录和服务器下载两种模式的使用方法
- C#调用java类、jar包方法
- C#调用java类、jar包方法
- java程序调用iReport生成的.jasper文件的方法
- C#调用java的jar文件,jar文件转dll
- java加载外部文件数据到代码中:外部数据文件放到jar包中,调用方法getResourceAsStream
- C#调用java类、jar包方法