BT

您是否属于早期采用者或者创新人士?InfoQ正在努力为您设计更多新功能。了解更多

Google发布J2ObjC 1.0:将Java转换为Objective-C

| 作者 Abel Avram 关注 4 他的粉丝 ,译者 黄晓雯 关注 0 他的粉丝 发布于 2016年2月17日. 估计阅读时间: 不到一分钟 | 硅谷人工智能、机器学习、互联网金融、未来移动技术架构 ,尽在QCon上海2017

J2ObjC是一个Google开发的开源工具,用于将Java代码转换为Objective-C代码。其目的是为了能在iOS平台上重用Android平台、web服务器端的Java代码。服务器端代码的转换由GWT完成。J2ObjC并不转换UI代码,这部分需要针对不同平台分别开发。

我们在2012年发布了J2ObjC的alpha版本,并公布了部分实现细节。J2ObjC的逐渐发展到稳定版1.0版本,并应用于开发Inbox、Calendar、Docs、Sheets、Slides和Google My Business等Google产品的iOS版本。同时,J2ObjC由Java 6升级到Java 7和Java 8,该项目的Google工程师Tom Ball表示这是为了“支持当前和过去主流的Java、iOS和Xcode发布版本”。此外,J2ObjC集成了JUnit、Mockito、Gradle和Maven,并支持通过原生方法将Objective-C代码嵌入Java代码

在被问到J2ObjC对Java 8的支持程度时,Ball告诉我们:

这取决于怎么定义"Java 8"。:-)我们加入了对Java 8一些语言特性的支持,如lambda表达式和方法索引。但是因为我们的JRE运行时基于Android的libcore库,所以目前还不支持任何Java 8引入的API。我们计划与libcore团队定期同步,这样他们添加的所有Java 8支持都能很快地被引入到J2ObjC的运行时。

谈及未来发展,Ball补充道:

J2ObjC主要是一个构建工具,因此会根据使用该工具的应用开发人员的需求来确定未来计划。我们现在了解到的需求是,他们希望我们持续且快速地支持iOS新特性、优化Swift互操作性、支持Java 8接口、提供更好的工具集成、减少构建次数。作为编译器开发工程师,我们也会专注于优化生成的代码和快速修复bug。

J2ObjC使用Apache License 2.0许可协议。

查看英文原文Google’s J2ObjC 1.0 Translates Java into Objective-C


感谢郭蕾对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者(已满),InfoQ读者交流群(#2)InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

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

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

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

讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT