题
我有一个中等大小(25k 行代码,25k 行测试)的 java 代码库,并且希望将其移植到 CLR 和 JVM 上运行。
只有主类和一些测试实用程序以任何方式处理文件系统或操作系统。其余代码广泛使用通用集合 API、java.util.regex、java.net(但不包括 URL 或 URLConnection)、用于字符集编码/解码的 java.io、用于 unicode 规范化的 java.text 和 org.w3c。 dom 用于 XML 操作。
是否可以在 J# 和 Java 下编译大部分代码库,然后移植其余部分?
如果是这样,我可能会遇到什么样的陷阱?
预先感谢迈克
解决方案
其他提示
陷阱:
- 任何像这样的事情都会让我害怕。等待发生的真正微妙的错误数量是巨大的。
- J# 仅支持 Java 1.1.4 AFAIK - 再见泛型等。
- Visual Studio 2008 不支持 J# - 基本上它是一个死项目。
我怀疑您实际上会发现用 C# 重写它会更简单(包括学习 C#,如果您还不知道它 - 这是一种乐趣)。如果相关的话,您最终也会得到一个更惯用的类似 .NET 的库:如果您希望另一位 .NET 开发人员使用您的代码,他们可能会更喜欢“纯”.NET 项目而不是使用 J# 的项目。
缺点是,今后任何更改都需要在两个地方进行。这当然很痛苦,但我真的认为使用“普通”.NET 会获得更好的体验。
正如乔恩指出:J#是相当死
使用 IKVM 可能的替代运行在.NET您的(正常)的Java代码,“虽然。
不隶属于 StackOverflow