C# – Java互操作

你能给我一些关于使C#代码和Java代码互操作的指示吗? 让我们将互操作定义为简单:允许(来自Java代码)C#中定义的类的实例化和方法调用,以及可能的另一种方式。

这甚至可以原生吗? (即没有一些代理/骨架接口机制)

最后,可以使用哪些代理机制? (即两个语言领域都支持)

我已经使用IKVM成功完成了这项工作。

我在这里找到了一篇关于CodeProject的非常有前途的文章。

摘自文章介绍:

建议的解决方案将展示两个框架如何在同一个流程中共存,并相互无缝通信。

本文描述了Java平台和.NET Framework之间的高性能互操作性解决方案。 建议的解决方案不会取代Java虚拟机或.NET Framework运行时,而是将JVM或.NET分别托管在相反的运行时环境中,从而确保保留特定于供应商的VM优化。

不知道在.NET端需要做什么(我不是.NET人),但Java提供了与本机库互操作的JNI框架。

从维基百科开始,然后按照链接…

我是jni4net的作者, jVM和CLR之间的开源进程间桥接。 它建立在JNI和PInvoke之上。 不需要C / C ++代码。 我希望它会对你有所帮助。

有一些第三方产品可以本机地进行.N​​ET-Java互操作。 J-Integra是我最熟悉的人(我不为他们工作,也不会对他们有任何经济利益)。

如果你对代理等没问题,你可以选择SOAP / Web Services或CORBA等几个选项。

快速谷歌搜索 在“Java + .NET集成方案”上找到此页面