鏖战九载,Google 是否会因 Oracle 而弃用 Java?

2019-01-31 08:48 稿源:CSDN公众号  0条评论

谷歌 (3)

图片来源图虫:已授站长之家使用

文/屠敏

来源:CSDN(ID:CSDNnews)

在过往的九年间,Google因旗下全球第一大操作系统Android中是否合理使用Java的问题,已经与软件巨头Oracle大战了三百回合,但一直没得到最终的定论。

而如今,随着 Google官方博客中一则名为《Oraclev.Googleandthefutureofsoftwaredevelopment》声明的发布,标志着这一案件的最后一战即将打响。在声明中,Google 全球事务SVP兼首席法务官KentWalker 表示“我们请求美国最高法院审查Google与Oracle在软件接口使用方面长期存在的版权纠纷。案件的结果将对整个计算机行业的创新产生深远的影响。”

这意味着Google已经向美国最高法院提出审理与Oracle之间有关Java版权问题的请求。其中如果最高法院接受案件审理,那么Google或许还有翻盘Oracle的可能;但如果最高法院拒绝审理此次案件,那么Google只能执行去年 3 月份美国联邦巡回上诉法院的裁决结果,即Google使用Java开发Android系统的行为的确侵犯了Oracle的版权,需向对方赔付 88 亿美元。

回顾正常案件,这看起来仅是部分代码的事件为何会演变成为如今这般情景?Oracle的胜诉又将带来怎样的影响?最终是否会导致Google弃用Java?全球的软件开发者又该何去何从?

01

全球第一大操作系统Android:树太大招来了强风

提及这一事件的根源,其实还得从Google的Android系统讲起。

21 世纪以来,各大科技巨头暗中发力,为移动互联网的新纪元做足了准备,其中Google也不例外。 2005 年,Google 在低调地将成立仅 22 个月的高科技企业Android及其团队收购后,迫切希望以此为契机能打破塞班统治的手机操作系统市场格局,抢占移动互联网下智能手机领域的先机。然而在美好的愿景之下,如何才能突破常规,打造出更出彩的操作系统生态?

当然首要因素是需要适用于诸多的开发者及用户,而这前提就需要Google去选择一门成熟且极具前景的编程语言为基础。

在彼时的环境之下,和广泛应用于桌面系统软件开发的C++、非面向对象的C语言、社区生态不够庞大的Python等语言相比,具有良好的跨平台特性以及拥有成熟生态系统的Java无疑中成为了Google最佳的选择。

不过值得注意的是,当时的Google并没有直接将JVM直接搬到Android上,而是自己使用JavaAPI设计了一个能够运行Android应用程序的虚拟机——Dalvik,在这过程中,Google并未向当时Java的拥有者Sun公司获取API的授权,而正是因此,才引发了后来两大巨头有关Java的版权之争。

02

Google与Oracle之间的 9 年之争

2009 年,纯软件先驱Oracle以 74 亿美元收购了Sun公司、并接手了Java的拥有权。然而令人唏嘘不已的是,第二年即  2010 年 8 月,Oracle就以一纸文书将Google告上了法庭,称迅速占领移动操作市场的Android系统侵犯了七项Java版权和专利,同时要求Google赔偿 26 亿美元。虽然Oracle律师AnnetteHurst曾正面回应,Oracle收购Sun公司并不是为了对Google发起版权诉讼。但是在收购第二年就急切地提出诉讼,这一行为免不了让业界人士的猜想一番。

对此,Oracle方坚持的态度是,Google明知道JavaAPI是受版权保护的,还故意而为之,目的就是为了让传统的Java程序员能很好地往Android平台过渡,为Android的生态带来丰富的应用程序。与此同时,Android背靠Java这棵大树,才会大获成功,为Google带来了巨大的商业价值。简而言之,没有Java,Android不会有今天的地位。

而另一面,Google则一直强调对于开源的Java,自由使用API是业界的正常做法,暗示着自己并不知晓JavaAPI是具有版权保护的。

不过,对Google颇为不利的是,Oracle在随后的对弈中,收集到了一封Android之父AndyRubin邮箱的企业内部邮件,其中提到Google内部试过替Android和Chrome寻找Java以外的替代方案,但那些替代方案都很糟糕,所以需要协商Java的授权问题。这意味着Google私底下都是知晓java.lang是受版权保护的。

在此不利的情况之下, 2011 年 3 月,Google聘用了Java的创始人JamesGosling来为自己站台。而自此之后,Google和Oracle之间的Java侵权事件也开始愈演愈烈:

•2011 年 9 月,Google和Oracle双方CEO第一次庭外和解失败。

•2012 年 3 月,Oracle不接受Google280 万美元赔偿方案。

•2012 年 5 月,陪审团认为Google使用了 9 行范围检查的Java代码构成侵权,代码如下:

private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {

   if (fromIndex > toIndex)

       throw new IllegalArgumentException("fromIndex(" + fromIndex +

                  ") > toIndex(" + toIndex+")");

   if (fromIndex < 0)

       throw new ArrayIndexOutOfBoundsException(fromIndex);

   if (toIndex > arrayLen)

       throw new ArrayIndexOutOfBoundsException(toIndex);

}

• 同月,WilliamAlsup法官推翻了陪审团认为Google侵权的意见,称API不应该受版权保护。随后,加州北区法院裁定Android系统没有侵犯专利,JavaAPI不存在版权,Google赢得短暂胜利。

•2012 年 10 月,Oracle不满判决结果,于是上诉至美国联邦巡回上诉法院。

•2014 年 4 月,美国联邦上诉法院判定API受版权保护,Google侵权,须赔偿,Oracle赢得胜利。

•2014 年 10 月,Google不服判决上诉至美国最高法院,请求高院介入。

•2015 年 6 月,美国最高法院驳回了Google在软件版权诉案中提出的上诉申请,维持原先的判决。

•2015 年 10 月,案件退回美国地区法院,由WilliamAlsup法官再次审理。

•2016 年 4 月,双方庭外和解会议再次失败。

•2016 年 5 月,旧金山联邦法院对该案复审。

•2018 年 3 月,美国联邦巡回上诉法院裁决,Google侵犯了Oracle的版权。

•2018 年 8 月,Google提出上诉,但美国联邦上诉法院宣布拒绝重新审理此案。

声明:本文转载自第三方媒体,如需转载,请联系版权方授权转载。协助申请

相关文章

相关热点

查看更多