“AI 技术+人才”如何成为企业增长新引擎?戳此了解>>> 了解详情
写点什么

JRuby 1.7.0 发布:默认使用 Rudy1.9 模式,并可使用 InvokeDynamic

  • 2012-10-29
  • 本文字数:762 字

    阅读完需:约 3 分钟

在第一个预览版(见InfoQ 的报道)发布五个月之后及第二个预览版发布不久, JRuby 1.7.0 发布了正式版。

JRuby 1.7 最显著的变化就是使用 Ruby1.9.3 作为默认运行模式,当然它仍然支持 1.8.7. 从以下发布说明上看,尽管 JRuby 1.7 修复了很多与 1.9 不兼容的问题,但仍未完全支持 Ruby 1.9 的 所有特性。

“虽然 JRuby 1.7 对 1.9 的某些特性还不支持,比如 Ripper,但已经可以稳定地在 1.9 模式中运行产品应用程序了。在可预见的未来,我们会每隔 2 到 3 周发布一个 1.7.x 补丁包,这些补丁将会解决用户向我们报告的问题以及那些尚未完成的 1.9 的库。”

JRuby 1.7 不再继续支持 Java 5,同时 Rubygems 和 Rake 的相应版本也更新到 1.8.24 和 0.9.2.2。

JRuby1.7 能使用 Java 7 的 invokedynamic 功能,但和第一个预览版不同,此功能现在默认为关闭状态。详细原因可见 JRuby wiki

“OpenJDK7 的现有版本有时会发生错误或者无法优化代码。为了提供一致的 JRuby 体验,在 Java 7 中将默认关闭 invokedynamic 功能。

对于那些没有出现运行错误或者性能降低的应用,我们推荐开启 invokedynamic 功能以获得最大性能。可以通过强制传递以下参数“Xcompile.invokedynamic=true”给 JRuby(或者添加到 JRUBY_OPTS 里),或者在 Java 虚拟机层面设置 “jruby.compile.invokedynamic=true” 参数来开启 invokedynamic 功能。”

Java 8 builds 的 Java 虚拟机中 invokedynamic 功能默认是开启的。

您是否已经尝试过在 JRuby1.7 中开启 invokedynamic 功能? 您的应用的性能有了多少提升?

查看英文原文 http://www.infoq.com/news/2012/10/jruby-17


感谢李永伦对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2012-10-29 23:58996
用户头像

发布了 39 篇内容, 共 12.6 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营 4 期 第9周

引花眠

架构师训练营 4 期

数字经济发展的时代特色

CECBC

数字经济

一文搞懂Cookie、Storage、IndexedDB

执鸢者

大前端 Cookie indexedDB storage

Java 中 Vector 和 SynchronizedList 的区别

看山

Java 线程安全 vector SynchronizedList

“他者”德意志(三):“翻险峰”的德国电动汽车产业

脑极体

架构设计篇之微服务实战笔记(九)

小诚信驿站

架构师 刘晓成 小诚信驿站 28天写作

SwiftUI数据流之State&Binding

kingnight_pig

ios swift SwiftUI

用例2

z

诊所数字化:诊所私域直播

boshi

直播带货 数字化医疗 七日更 28天写作

mybatis的通用插入更新方案

altantisor

Java mybatis

2.2 Go语言从入门到精通:Go语言变量

xcbeyond

变量声明 28天写作 Go 语言

作业 - 第四章 业务流程与产品文档 (二)

hao hao

区块链架构下的智慧城市发展加速

CECBC

信息安全

区块链与数字货币的发展到底有什么意义

CECBC

数字货币

产品经理训练营知识汇总

SilentMacUser

产品经理 产品经理训练营 邱岳

浅谈JVM 垃圾回收原理

跳蚤

c++基本语法详解

张鹤羽

28天写作 3月日更

我眼中的IT售前工作

小谢同学

云计算 职场 解决方案 售前

业务中台建设 - 4种部署模式

孝鹏

部署图 隔离性 中台架构

dubbo 源码 v2.7 分析:SPI机制

程序员架构进阶

Java spi 七日更 28天写作 2月春节不断更

(28DW-S8-Day9) 区块链如何对坏节点容错:拜占庭将军问题

mtfelix

28天写作 拜占庭容错 拜占庭将军

「架构师训练营 4 期」 第八周 - 001&2

凯迪

架构师训练营 4 期

最值得阅读的数据仓库书籍推荐

白程序员的自习室

大数据 数据仓库 推荐书籍 数仓 构建模型

易语言使用与研究

慕容

易语言

谈学习

Ryan Zheng

学习方法

第四章作业(二)

墨狂之逸才

SwiftUI数据流之StateObject& ObservedObject探讨

kingnight_pig

ios swift SwiftUI

论文阅读:通过动态预测/完备在稀疏知识图谱上进行多跳推理

Alocasia

自然语言处理 深度学习 nlp 强化学习

SQL Server 多表数据增量获取和发布 1

happlyfox

学习 28天写作 2月春节不断更

MySQL连接超时关闭问题解决

flyer0126

MySQL MySQL优化

【LeetCode】单调数列Java题解

Albert

算法 LeetCode 28天写作 2月春节不断更

JRuby 1.7.0 发布:默认使用Rudy1.9 模式,并可使用InvokeDynamic_语言 & 开发_Mirko Stocker_InfoQ精选文章