我们想在 JVM 上运行我们的 C# 代码
我的公司拥有庞大的 C# 代码库。超过一半的代码是我们创建、读取、修改、计算和编写 Excel 工作簿的核心引擎。我们经常收到来自客户和潜在客户的问题,询问我们是否要构建我们引擎的 Java 版本——他们中的许多人对 UI 根本不感兴趣。我们甚至有一些客户不厌其烦地从他们的 Java 应用程序中使用我们的 .NET 库。
因此,我们希望构建我们核心引擎的 Java 版本,最好不要维护单独的 Java 源代码库。
Eric Sink很好地描述了这个问题。除了我们的软件许可包括免版税部署这一事实之外,我处于类似的位置,这使得 Eric 选择 Mainsoft 对我们来说是不可能的。
几年来,我每隔几个月就在谷歌上搜索“c# to jvm”之类的东西,但没有任何乐趣。我花了大约 7 年时间为 Java 开发类似的软件,我相信我们在核心引擎中使用的 .NET API 可以很容易地封装,并且我们可以使用 Java 库完成我们需要的一切。因此,如果我们只有一个 C# -> JVM 编译器,我们就可以为 Java 构建我们的核心引擎,并且我们不再需要拒绝想要使用它的 Java 开发人员。
我不是问 Sun 不做 C# 编译器的技术原因。我认识到 Java 没有属性或无符号的 64 位长等......为了论证,假设所有这些技术问题都可以通过扩展 JVM 和/或其他方式来处理。
而且我并不是要求就为什么一种语言/堆栈可能比另一种更好进行另一次辩论。我们业务的实际情况是,每个都有大量潜在客户使用。
Sun 为什么要做 C# 编译器?(当然是国际海事组织)
更容易在 Java 平台上运行 C# 代码意味着更多的开发人员和更多的平台软件。平台的成功还有什么比这更重要的吗?Jonathan Schwartz是一名软件专家。我会让比我更聪明的人来决定他是否担任 Sun 总裁兼首席执行官这一不可能的工作,但在乔纳森加入 Sun 后不久与他会面,我的印象是他了解软件以及对大型软件的需求开发人员的基础。
那么为什么 Sun 不做 C# 编译器呢?
一定有充分的理由。我只是无法为我的生活弄清楚它是什么......