BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

在.NET/Mono上运行Java:Jeroens Frijters谈IKVM.NET

| 作者 Jeff Martin 关注 14 他的粉丝 ,译者 张龙 关注 12 他的粉丝 发布于 2012年5月11日. 估计阅读时间: 2 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

IKVM.NET(IKVM)是个面向.NET与Mono平台的JVM,用户可以通过它直接运行Java应用。近日,来自微软的Erik Meijer与IKVM创建者Jeroen Frijters讨论了该项目的几个方面。此次讨论的涉及面非常广,从IKVM的内核谈到了该项目的未来目标。其要点如下所示:

Frijters从2002年该项目启动开始就作为项目的主开发者。此次讨论首先从Frijters介绍IKVM是如何成为Mono项目的一部分(形成一种双赢的局面,两个项目可以彼此贡献补丁)开始。从架构上来说,IKVM在.NET上完全实现出了Java的内存模型。Frijters尝试尽量不使用包装器,在某些情况下需要通过包装器才能正确地处理Java的字符串接口。

如果代码运行在IKVM上,那么.NET开发者可以在Java代码中使用自定义属性。如果代码运行在IKVM上,那么Java与.NET这两个平台都可以使用属性。这样,开发者就可以在Java代码中使用.NET自定义属性,也可以在C#类与成员中使用Java注解。

在背后,IKVM的运行时与编译器主要都是使用C#编写的。Frijters可以使用公开的Java代码(来自于GNU Classpath与OpenJDK等)并替换掉托管代码中的原生C代码。如果用户在应用中没有使用原生代码,那么使用了IKVM的Java应用就是完全可移植的,因为IKVM并未使用任何原生代码。

目前,IKVM已完全支持Java 7,包括对新的指令invoke dynamic的支持。然而,Frijters承认还有很多工作要做以提升新指令的性能。

查看英文原文:Running Java on NET/Mono: Jeroens Frijters Discusses IKVM.NET

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

很牛逼 by 无 趣

把c#好好学学,很值啊。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT