我正在寻找开源选项来调用将要部署的Java应用程序中的.net dll。运行linux盒子。我通过互联网搜索,发现下面的选项可能是相关的(忽略直接的JNI选项,因为它需要Visual C ++知识,我的.net dll有非常复杂的实现):
a)JNA(Java Native Call)
b)JNI4NET
c)IKVM
只是一个重要的提及,我无法在.net源代码中进行任何修改并重新生成.dll。我必须按原样使用它。
任何有关简要说明和限制的建议。每个选项的优点?或者,如果有任何其他简单的&可以使用强大的开源框架?我是否需要强制性地在Linux机器上安装WINE或MONO等模拟器以支持.net dll或者有一种解决方法?
答案 0 :(得分:0)
使用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);
}
}
}