BT

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

IKVM.NET 7.0业已发布

| 作者 Jeff Martin 关注 16 他的粉丝 ,译者 侯伯薇 关注 0 他的粉丝 发布于 2011年12月22日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

IKVM.NET项目是对Mono和Microsoft.NET的Java实现,最近发布了7.0版本。这个项目是由Jeroen Frijters开发的,设计初衷是为了架起JVM和.NET平台之间的桥梁。IKVM.NET提供了在.NET上运行Java应用程序的功能,并支持微软的.NET框架和Mono 2.0。

IKVM.NET项目由以下组件构成:

.NET中实现的Java虚拟机

对Java类库的.NET实现

让Java和.NET可互操作的工具

最新的版本中增加了多项新特性,包括专注于互操作的支持,这是基于OpenJDK 7 b147和Java 7 JVM的变更做出的。与上次发布的版本相比,此次做出的改善包括:

  • 在静态编译代码上的Java注解现在会返回为java.lang.reflect.Proxy对象,从而与假设总是如此的代码保持兼容。
  • 增加了从java.lang.reflect.InvocationHandler到ikvm.runtime.Delegates的托管转换(delegate conversion)。
  • 对构建和JNI代码的变更,以针对Windows x86和x64版本的本地dll使用不同的名称。
  • 保留ikvmc编译代码使用的反射字段(这并不是必须的,只是为了与之前被破坏的代码保持兼容)。
  • java.lang.AutoCloseable和System.IDisposable之间的互操作。
  • 修正了append模式中的java.io.FileOutputStream,以使用原子级的append。
  • 为ikvm.exe增加了-Xnoglobbing选项。
  • 实现了双堆栈(dual stack)sockets(仅对Windows Vista及以上版本)。
  • 实现了MBean服务器。
  • 实现了SocketChannel.sendOutOfBandData()。
  • 实现了DatagramChannel的multicast方法。
  • 删除了从System.Security.VerificationException向java.lang.VerifyError的映射。
  • IKVM.Reflection: 多项改善,以支持大部分托管的PE功能。(比System.Reflection.Emit要强大很多)。

发布声明声称,这个版本已经在Windows下通过了32位和64位的.NET Framework 2.0 SP2和.NET 4.0的测试。

查看英文原文:IKVM.NET 7.0 Released

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

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

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

的确很酷,但是你能想象到应用到那里? by cui weifu

java的代码能跑在.NET上的作用是干什么?

Re: 的确很酷,但是你能想象到应用到那里? by ko minco

自然是迁移java代码到.net平台了
以及与现有java代码进行互操作,如jmx

允许的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通知我

2 讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT