Java和C#之间的交互

时间:2008-11-24 06:34:11

标签: c# java programming-languages user-interface

是否可以用Java编写用C#编写的用户界面?

我正在使用C#编写的项目的用户界面,但我没有使用C#的经验,而且我是一个狂热的Java用户。是否可以使用Java的Swing和AWT库在Java中构建用户界面,这些库运行主要使用C#编写的应用程序。

如果这听起来像是一个非常愚蠢的问题,我会事先道歉。

5 个答案:

答案 0 :(得分:3)

您可以利用集成到Mono 2.0中的一些互操作性功能

http://www.mono-project.com/Main_Page

JNBridge是另一种可能的互操作性解决方案:

http://www.jnbridge.com/

但是,更优化的方法可能是将.NET代码公开为服务 - 然后从Java客户端(或通过轻量级ESB)访问它们。

当然,时间,预算,资源是您必须考虑的限制因素。

答案 1 :(得分:1)

我们最近做了这个并且采用了低级套接字连接的路线,但推动xml通过它。 C#是服务器端,我们使用Microsoft的'xsd'工具为对象生成XSD架构,然后在java端使用JAXB生成java代码来解析和保存相同的对象。

正如Barry所提到的,大多数工作/问题都是在套接字连接上 - 但这取决于你对它的满意程度。

答案 2 :(得分:1)

除了http://www.jnbridge.com(专有) 您可以尝试http://www.janetdev.org, - .NET平台的Java 5 SE JDK环境的开源实现。目前它仅支持.Net 3.5(不是Mono)。

答案 3 :(得分:1)

此外,对于交叉编译您的Java以在CLR中运行的解决方案:http://www.ikvm.net/

答案 4 :(得分:1)

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