从Java调用C#代码?

Kei*_*h G 33 c# java java-native-interface

有没有人有一个很好的解决方案将一些C#代码集成到一个Java应用程序?

代码很小,所以我可以用java重写,但如果可能的话我宁愿重用代码.不要重复自己,等等.

此外,我知道我可以将C#作为Web服务或其他任何东西公开,但它有一些安全/加密的东西,所以我宁愿保持紧密集成,如果可能的话.


编辑:它将在基于服务器的应用程序上,因此"下载"另一个运行时无关紧要.

Fly*_*wat 30

您将使用Java Native Interface调用编译为DLL的C#代码.

如果它只是少量的C#,那么将它移植到Java会容易得多.如果它很多,这可能是一个很好的方法.

以下是对它的高级概述:

http://en.wikipedia.org/wiki/Java_Native_Interface

您的另一个选择是从C#代码创建COM程序集并使用J-Interop来调用它.

http://sourceforge.net/projects/j-interop/


Pav*_*ara 19

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


Joe*_*orn 7

如果它很短,我认为你最好在java中重写代码.下载一个50Mb的运行时已经足够糟糕了.


Tom*_*ter 5

有一个 IL 到 Java 字节码编译器GrassHopper可能对您有用。但我从未尝试过。

不过我会考虑用 Java 重写你的代码

编辑:请注意,Grasshopper 似乎不再可用。