Java CLR上的JVM和反之亦然

Java CLR上的JVM和反之亦然,java,.net,jvm,clr,Java,.net,Jvm,Clr,我使用Java和.NET已经很多年了,我看到很多JVM和CLR的实现;许多操作系统、许多供应商等等,但我想问的是,是否有人知道在JVM上实现CLR或在CLR上实现JVM 若这样一个桥接器可以实现,那个么它应该会让这个东西在运行时更加便携 我知道CLR和JVM之间没有什么区别,也有很多相似之处,但两个运行时之间也有交叉编译器,比如XMLVM,也许可以在运行时提供此功能 这可能吗?如果没有,主要的技术障碍是什么 允许在顶级CLR(Mono或MS)上运行Java字节码,并将Java源代码编译到CLI,

我使用Java和.NET已经很多年了,我看到很多JVM和CLR的实现;许多操作系统、许多供应商等等,但我想问的是,是否有人知道在JVM上实现CLR或在CLR上实现JVM

若这样一个桥接器可以实现,那个么它应该会让这个东西在运行时更加便携

我知道CLR和JVM之间没有什么区别,也有很多相似之处,但两个运行时之间也有交叉编译器,比如XMLVM,也许可以在运行时提供此功能


这可能吗?如果没有,主要的技术障碍是什么

允许在顶级CLR(Mono或MS)上运行Java字节码,并将Java源代码编译到CLI,当然,库支持可能是一个问题。

也许可以看看IKVM.NET,它是CLR桥中的JVM。另一方面,一个很大的障碍可能是泛型的不同实现(即CLR应该能够毫不费力地托管类型擦除的Java泛型,但JVM可能会与CLR的类型保留泛型斗争),而交叉编译语言可能并不难,您在以本机方式支持所有库时遇到问题。无论你想出什么,都必须比在JVM上运行Java或在mono上运行CLR要好,这已经相当不错了。谢谢@Marc。查看了IKVM.NET,发现它很有趣。因此,在您看来@Peter,要有一种“运行所有节点”让任何开发人员都可以在其上部署,最好考虑一种代理模式,选择在哪个运行时部署二进制文件,而不是一个真正能够运行几乎任何东西的盒子?这在技术上可能可行,但也有商业方面的考虑。我不认为Oracle和Microsoft会联合生产虚拟机,我也不知道有哪家公司拥有生产虚拟机的资源和名称,这种虚拟机将比现有的安排更受欢迎。