代码之家  ›  专栏  ›  技术社区  ›  Amith Kumar

正在调用将在linux box上运行的java应用程序中的.net dll?

  •  0
  • Amith Kumar  · 技术社区  · 11 年前

    我正在寻找在java应用程序中调用.netdll的开源选项,该应用程序将被部署&在linux盒子上运行。我在互联网上搜索,发现以下选项可能是相关的(忽略直接JNI选项,因为它需要Visual C++知识,而我的.net dll有非常复杂的实现):
    a) JNA(Java本机调用)
    b) jni4网络
    c) IKVM公司

    重要的一点是,我不能在.net源代码中进行任何修改并重新生成.dll。我必须按原样使用它。

    任何建议,包括限制和;每个选项的优点?或者如果还有其他简单的&是否可以使用健壮的开源框架?我是否需要在linux上强制安装WINE或MONO等模拟器来支持.net dlls,或者有解决方法?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Nissim    11 年前

    使用 IKVM.NET .

    它弥补了mono和java之间的差距,以实现简单的互操作性,例如:

    import cli.System.IO.*;
    
    public class ShowDir{
    
       public static void main(String[] args){
           String[] files = Directory.GetFiles("."); //.NET System.IO
           for(String file : files){
               System.out.println(file);
           }
       }
    }