Java技术- Java通向通用语言运行平台之路  作者:范凯

SUN公司的工程师、JSR-292规范的领导者、Java虚拟机开发人员John Rose 8月底,在博客中宣布,正在开发中的下一代Java虚拟机已经可以运行动态指令(invokedDynamic)了。“invokedynamic”是在JCP的JSR-292规范中定义的一组专门为了Java虚拟机运行动态脚本语言所添加的字节码指令。

随着近年来动态类型语言,诸如Python、Ruby、Groovy等语言的崛起和流行,Java虚拟机也开始提供良好的动态语言支持。但是目前这些动态类型语言在Java虚拟机上面的执行效率还不能和Java原生代码相比,有了invokedDynamic指令集的支持后,Java虚拟机就可以直接处理动态类型的变量,从而扫除了动态类型语言的运行效率问题。

JRuby项目的领导者Charles Oliver Nutter也很受该消息的鼓舞,他在博客中写道,JRuby将在下一个版本1.1.5当中支持invokedDynamic指令集,当JRuby运行在支持invokedDynamic指令集的Java虚拟机上,将自动激活该功能;反之,将关闭该功能。invokedDynamic指令集有可能最快在Java 7.0版本中提供。

上个月我们介绍了JBoss Seam 2.1框架的前景,本月Seam 2.1的Beta1版本就发布了。很多预期的新功能都基本兑现,例如:1,Seam提供了Wicket Web框架的整合;2,提供了内建的灵活的用户身份管理功能。3,权限管理功能。Seam现在支持基于ACL和Rule Based两种权限验证机制;4,可以使用JSF的tag和Facelets的模板来生成Excel和CSV格式的报表;5,内建支持URL重写机制,提供良好的SEO;6,开始支持JAX-RS标准,即支持Java的REST API;7,Seam的单元测试框架速度得到了很大的提高,和在JBoss应用服务器下面运行代码的速度基本一样快了。

总之Java社区在自身原生框架的创新,已经多语言平台支持两条路方面都在不断开拓。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐