it-swarm.cn

有没有一个有效的工具将C#代码转换为Java代码?

有没有一个有效的工具将C#代码转换为Java代码?

83
joshjdevl

我从未遇到过C# - > Java转换工具。语法很简单,但框架却截然不同。即使有工具,我也会强烈反对。我已经参与了几个“迁移”项目,并且不能说得足够重要,虽然转换似乎是一个不错的选择,转换项目 始终总是 转入金钱坑。它不是捷径,你最终得到的代码是不可读的,并没有利用目标语言。从个人经验来讲,假设重写是更便宜的选择。

43
Michael Meadows

我们需要在C#和Java中维护一个应用程序。由于我们积极维护此产品,因此不能选择一次性端口。我们调查了Net2Java和Mainsoft工具,但都没有达到我们的要求(Net2Java缺乏稳健性,Mainsoft因为成本和源代码转换不足)。我们创建了自己的工具 CS2J 作为我们每晚构建脚本的一部分运行,并为Java提供了一个非常有效的C#代码端口。现在,它恰好足以翻译我们的应用程序,但在被视为一个综合工具之前还有很长的路要走。我们已经将这项技术授权给了一些有类似需求的政党,我们正在考虑公开发布它的想法,但我们的核心业务让我们现在忙得不可开交。

27
Mike Rustici

这个博客 帖子 建议有用的结果来自 有形

8
Nick Westgate

Microsoft提供了一种将Java转换为C#的工具。对于相反的方向,看看 这里这里 。如果这不起作用,手动转换源不需要太长时间,因为C#和Java非常相似,

6
Roger Ween

虽然这是一个古老的问题,但请看一下xmlVM http://www.xmlvm.org/clr2jvm ,我不确定它是否足够成熟,尽管它已存在好几年了。我相信,XMLvm主要用于将Android Java应用程序转换为iPhone,但是,基于XML代码转换的框架足够灵活,可以进行其他组合(参见网站上的图表)。

至于进行这种转换的原因,可能需要“劫持”一些 非常丰富的oss代码 在那里并在他/他们自己的[Java]项目中使用它。

干杯

丰富

5
Big Rich

试着看一下 Net2Java 在我看来,从C#到Java的自动(或至少半自动)转换的最佳选择

4
Pedro C

它们不直接转换,但它允许.NET和J2EE之间的互操作性。

http://www.mainsoft.com/products/index.aspx

3
scubabbl

C#还有一些比Java更多的功能。以代表为例:许多非常简单的C#应用​​程序使用委托,而Java人员认为观察者模式已足够。因此,为了使工具转换使用委托的C#应用​​程序,它必须将结构从使用委托转换为观察者模式的实现。另一个问题是,当Java方法时,C#方法默认不是虚拟的。此外,Java没有办法使方法非虚拟。这就产生了另一个问题:C#中的应用程序可以通过多态来利用非虚方法行为,而不会直接转换为Java。如果你环顾四周,你可能会发现有很多工具可以将Java转换为C#,因为它是一种更简单的语言(请不要激怒我,我没有说更糟糕,我说更简单);但是,如果有任何可以将C#转换为Java的好工具,你会发现很少。

我建议改变你从Java转换到C#的方法,因为从长远来看它会减少麻烦。 Db4Objects最近发布了他们用于将Db4o转换为C#的公共内部工具。它被称为锐化。如果您在他们的网站上注册,您可以查看此链接以及如何使用Sharpen的说明: http://developer.db4o.com/Resources/view.aspx/Reference/Sharpen/How_To_Setup_Sharpen

(我已经和他们一起注册了一段时间,他们很好不会发送垃圾邮件)

3
Lorentz

这些 伙计似乎有一个解决方案,但我还没有尝试过。他们还有转换器的演示版本。

3
Guven Demir

我不确定你想要将C#转换为Java,但是如果它是你需要的.net互操作性,你可能想看看 Mono

1
karlipoppins

那么语法几乎相同,但它们依赖于不同的框架,所以转换的唯一方法是让一个知道两种语言并转换代码的人:)你的问题的答案是没有没有“有效”的工具来转换c#到Java

1
Hannoun Yassir

这是关闭袖口,但不是什么 Grasshopper 是为了?

1
Ian Patrick Hughes

可能你可以使用 jni4net - opensource bridge 而不是?或者 其他选项列表 我知道。

1
Pavel Savara