将.Net dll转换为jar文件

时间:2016-02-21 11:31:14

标签: .net dll jar

我有一个为windows编译的.net dll文件。我需要将它转换为.jar文件,具有与android相同的功能 有没有办法将其转换为可执行的.jar文件?

我为此尝试了Com4j。但它抛出了一个例外。

  

C:\ Users \ Name \ Desktop \ com> java -jar tlbimp.jar -o output -p mypackage Maths.dll

Exception in thread "main" com4j.

ExecutionException: com4j.ComException: 80029c4
a LoadTypeLib failed : Error loading type library/DLL. : .\com4j.cpp:395
        at com4j.ComThread.execute(ComThread.java:203)
        at com4j.Task.execute(Task.java:25)
        at com4j.COM4J.loadTypeLibrary(COM4J.java:322)
        at com4j.tlbimp.driver.Lib.getLibid(Lib.java:90)
        at com4j.tlbimp.driver.Driver.addLib(Driver.java:38)
        at com4j.tlbimp.driver.Main.doMain(Main.java:123)
        at com4j.tlbimp.driver.Main.main(Main.java:56)
Caused by: com4j.

ComException: 80029c4a LoadTypeLib failed : 
Error loading type library/DLL. : .\com4j.cpp:395
        at com4j.Native.loadTypeLibrary(Native Method)
        at com4j.COM4J$2.call(COM4J.java:324)
        at com4j.COM4J$2.call(COM4J.java:322)
        at com4j.Task.invoke(Task.java:51)
        at com4j.ComThread.run0(ComThread.java:153)
        at com4j.ComThread.run(ComThread.java:134)

1 个答案:

答案 0 :(得分:0)

JAR文件包含Java .class字节代码。 DLL包含Windows编译代码。

我能想到在Java中重用DLL的唯一方法是使用JNI接口调用它。我不确定您是否可以在Android上执行本机代码。 JNI是否允许在移动设备上使用?