2014-05-24 135 views
0

我有一些somoe C#源代码,我希望在linux操作系统下可用于Java应用程序。从linux下调用C#单一代码

如何从java代码中调用一些C#方法?

我发现了http://www.mono-project.com/Java但这看起来像在.net环境中编写java代码。这不是我所追求的。相反,我需要创建一个新的Java库,它将公开来自C#代码的所有功能,新的库必须在纯Java环境中执行。也许这对IKVM是可能的,我不确定。

+0

我建议你在java中重写代码。语法非常相似。但Mono可用于Linux,因此如果他们获得Mono,他们将能够在Linux机器上运行您的代码。尽管C#是Microsoft语言,但它可以使用正确的工具在其他机器上编译。 – Rynoh97

+0

为什么投票结束? – eomeroff

回答

3
  1. 使用Mono在您选择的Linux平台上编译您的C#类;
  2. 使用JNI写了一组外观类的Java代码和编译的C#代码之间。
0

你的问题将被关闭(我也投了),因为它最终会导致一个工具建议。

你最好的方法是用Java重写它们。或者另外,还有一些现有的工具(商业或免费)到C#转换成Java,

Mono是不是你应该在这个时刻考虑的问题。是的,IKVM.NET只能帮助在Mono/.NET上运行Java代码,并不能帮助你解决这个问题。

+0

但我不能重写C#代码。我的问题,它的一部分,如果解决方案是工具或不是我精正好解决了这个问题。 – eomeroff

0

目前还不清楚您是否可以通过单声道执行c#项目,如果可以的话,那么处理intercomunication是一条路。

如果你在Linux中这样做,我应该使用管道通道来实现两个进程的互通,工作非常好,并且易于使用。

如果你不能执行c#过程,那么这是另一个历史,你不能直接从java调用.net程序集。

而且还使用单在Linux上每个今天给出了很大的成绩(除ASP .NET),我们使用它,(在大多数情况下比Java更快响应)变得非常良好的效果。

1

我能找到,可能是有用的最接近工具将JNI4Net

我觉得你还是需要单在Linux上运行.NET框架为好。

+0

JNI4Net在linux上工作吗? – eomeroff