墨穗app.notebase.cn
控制台
内容库
动态
管理
账户
U
用户
--
在线
v1.0.165 · 墨穗笔记
笔记

Notebase墨穗
静水流深,落墨成穗。

0笔记
0工具
30推荐

分类导航

按主题直达

编辑精选

站内用户贡献 · 真实笔记

最新收录

每日更新
继续浏览全部内容 →

笔记

0
加载中...

工具

0

此页用于记录用户反馈问题后的每一次改进

关于

笔记用法

“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。

md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。

要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。

工具用法

在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。

要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。

工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。

隐藏笔记

写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。

适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。

不想公开、只想临时给人看:点“分享”生成一条带密码和有效期的链接,到期自动失效,你也能随时撤销。

数据安全

你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。

技术

全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。

理念

这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。

原则

不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。

更多

产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。

举报

如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。

趋势

// 点击导航加载发现
归档
// 归档为空
最近浏览
// 暂无浏览记录
发布
// 加载中...
用户发布
// 加载中...
用户管理
// 加载中...
访问统计
// 加载中...
内容审核
// 加载中...
个人信息
// 加载中...
返回首页

谷歌复制Java API被判合理使用:一场十年版权大战的终局

2026-08-29法律政治

美国最高法院裁定谷歌复制Java SE API属于合理使用,为软件接口的互操作性确立了重要法律先例。

谷歌诉甲骨文:一场持续十年的软件版权世纪大战

2021年4月5日,美国最高法院以6比2的投票结果裁定,谷歌在Android操作系统中复制Oracle(甲骨文)公司拥有的Java SE API声明代码(declaring code)属于合理使用(fair use),不构成版权侵权。这一判决结束了长达十年的法律拉锯战,也为软件行业的API(应用程序编程接口)版权问题划下了一个重要的分水岭。

案件背景:从Sun到Oracle,从Java到Android

要理解这场诉讼的来龙去脉,我们需要先回到上世纪90年代。1995年,Sun Microsystems公司发布了Java编程语言,其核心设计理念是“一次编写,到处运行”(Write Once, Run Anywhere)。为了实现这一目标,Java平台提供了丰富的标准API,开发者通过调用这些API来构建应用程序,而无需关心底层操作系统或硬件的差异。

2005年,Google收购了Android公司,决定基于Java语言开发智能手机操作系统。Google没有向Sun Microsystems申请Java SE(标准版)的许可证,而是选择了自行实现一个兼容的Java API。Google当时认为,Java API本身不应该受到版权保护,因为它是实现互操作性的必要接口。

2009年,Oracle以74亿美元收购了Sun Microsystems,从而获得了Java相关的知识产权。2010年,Oracle正式起诉Google,指控其Android操作系统侵犯了Java的版权和专利。诉讼的核心焦点是:Google复制的37个Java API包中的约11,500行声明代码是否侵犯了Oracle的版权。

技术核心:什么是API的声明代码?

API(应用程序编程接口)是软件组件之间交互的约定。以Java为例,一个API包(package)通常包含:

  • 声明代码(Declaring Code):定义方法签名、类结构、接口、常量等的代码。例如,public class String、public int length() 这些行代码就是声明代码。它们规定了“做什么”(what to do),但不包含具体实现逻辑。
  • 实现代码(Implementing Code):真正执行逻辑的代码,即方法体内部的具体算法和步骤。例如,length() 方法的实现代码会返回字符串的字符数。

Google在开发Android时,为了确保Java开发者能够无缝迁移到Android平台,需要保证API的兼容性。这意味着Android的API必须与Java SE API具有相同的包名、类名、方法签名和参数类型。Google完全重写了实现代码,但声明代码为了兼容性不得不保持一致。

Oracle主张,这些声明代码是Google逐字复制(verbatim copying)的,因此构成了版权侵权。Google则辩称,API是“操作方法”(method of operation)或“系统”(system),不受版权保护,即使受保护,这种复制也属于合理使用。

法律历程:从地区法院到最高法院的三次转折

这场诉讼经历了多个回合的审理:

第一回合:北加州联邦地区法院(2012年)

法官William Alsup裁定,API的声明代码不属于版权保护范围,因为它们是一种“必要的、与思想不可分割的表达”(necessary and inseparable from the idea)。他认为,如果允许API受版权保护,就等于赋予了对整个软件生态系统的垄断权。陪审团也认定Google没有侵犯专利。

第二回合:联邦巡回上诉法院(CAFC)第一次审理(2014年)

Oracle上诉后,CAFC推翻了地区法院的裁决。CAFC认为,API声明代码是“创造性的表达”(creative expression),可以受到版权保护。法院还指出,API的结构、顺序和组织(SSO)也属于表达的一部分。案件被发回重审,以评估合理使用抗辩。

第三回合:北加州联邦地区法院重审(2016年)

陪审团裁定Google对API的使用构成合理使用。陪审团认为,Google复制API声明代码是“转化性使用”(transformative use),即不是简单地复制,而是将其用于创建新的、具有不同目的的Android平台。

第四回合:CAFC第二次审理(2018年)

CAFC再次推翻了地区法院的裁决,认定Google的使用不构成合理使用。CAFC的理由包括:Google的复制行为是商业性的、未获许可的;API声明代码具有原创性和创造性;Google本可以使用非侵权的方式实现互操作性(例如通过独立编写API)。

第五回合:最高法院(2021年)

最高法院同意审理此案,最终以6比2的投票推翻了CAFC的判决,认定Google的行为构成合理使用。布雷耶大法官(Justice Breyer)撰写了多数意见,托马斯大法官(Justice Thomas)和阿利托大法官(Justice Alito)持反对意见。

最高法院的判决理由:合理使用的四要素分析

最高法院的判决核心在于合理使用原则的适用。美国版权法第107条规定了判断合理使用的四个要素:

  1. 使用的目的和性质(包括是否为商业用途、是否具有转化性)
  2. 被使用作品的性质
  3. 被使用部分占整个作品的比例
  4. 使用行为对原作品潜在市场或价值的影响

要素一:使用的目的和性质

法院认为,Google复制API声明代码的目的是为了让程序员能够使用已有的Java技能和知识来编写Android应用,而不是为了单纯地复制Java SE本身。Android是一个全新的移动操作系统,与Java SE(主要用于桌面和服务器)面向不同的市场和环境。Google的复制是“转化性”的——它借用了API的“词汇”和“语法”,但构建了全新的“语言表达”。

布雷耶大法官在意见中写道:“Google复制了那些声明代码,但只限于那些用户(程序员)需要与Java编程语言交互的部分。Google这样做是为了让程序员能够使用他们已有的技能,而不是为了盗用Oracle的创造性劳动。”

要素二:被使用作品的性质

法院承认,Java SE API具有功能性特征。虽然API声明代码包含一定的创造性表达,但它本质上是一种“接口”或“工具”,其价值在于功能而非美学。法院指出,与小说、诗歌或音乐作品不同,API的声明代码是“为功能目的而写的”,其表达方式受到实际约束——例如,方法名需要表达其功能,参数类型需要符合逻辑。

要素三:被使用部分的比例

Google复制的约11,500行声明代码只占Java SE API全部代码的很小一部分(约0.4%)。更重要的是,Google只复制了实现互操作性所必需的部分,没有复制实现代码、测试代码、文档或任何其他非必要的部分。法院认为,这种“最小必要”的复制进一步支持了合理使用的认定。

要素四:对市场的影响

法院分析了Oracle的潜在市场损失。Oracle的主要收入来源是Java SE许可证的销售,而Android并非Java SE的直接替代品。Android是免费的移动操作系统,而Java SE主要面向企业级桌面和服务器应用。法院指出,没有证据表明Android的出现减少了Java SE的市场份额;相反,Android的流行可能扩大了Java生态系统的整体影响力。

此外,法院还考虑了“公共政策”因素:如果认定Google侵权,将对软件行业产生“寒蝉效应”(chilling effect),阻碍开发者创建具有互操作性的新软件。计算机行业长期以来依赖于API的开放和互操作性,过度的版权保护将扼杀创新。

反对意见:托马斯大法官的担忧

托马斯大法官在反对意见中提出了几个关键论点:

  1. 版权法不要求“必要”才构成侵权:即使Google复制声明代码是必要的,也不意味着这种复制就是合理的。版权法允许版权人拒绝许可,即使这会阻碍互操作性。
  2. 转化性使用的认定过于宽松:Google的复制是商业性的,而且它没有对复制的代码进行任何修改。将一个API从一个平台复制到另一个平台,并不构成“转化”。
  3. 市场影响评估过于乐观:Oracle确实通过许可Java API获得了收入,Android的免费模式可能削弱了Oracle的许可议价能力。

托马斯大法官警告说,这一判决可能会让大型科技公司更肆无忌惮地复制他人的创造性作品,只要他们声称是为了“互操作性”或“兼容性”。

判决的深远影响

对软件行业的影响

这一判决具有里程碑式的意义。它明确了:API的声明代码虽然可能受版权保护,但在合理使用原则下,为了实现互操作性而进行的复制通常是合法的。

对于初创公司和开源社区来说,这无疑是一个胜利。它意味着开发者可以合法地实现兼容的API,而不必担心版权诉讼。例如,Linux操作系统中的Wine项目(允许在Linux上运行Windows应用)、React Native等跨平台框架,都依赖于API兼容性。

对Oracle和Java生态的影响

对Oracle来说,这是一个重大打击。Oracle曾希望通过此案确立API版权保护的先例,并从中获得数十亿美元的许可费。但判决后,Oracle的股价并未出现大幅波动,因为市场早已消化了这一预期。

对Java生态而言,判决实际上可能是有利的。Android的成功让Java成为全球最流行的编程语言之一,如果Google被迫支付高额许可费或重新设计API,整个Java生态的活力都会受损。

对国际知识产权讨论的影响

此案也引发了全球对软件版权边界的讨论。欧盟、中国等司法管辖区对软件接口的版权保护有不同的规定。中国的《计算机软件保护条例》对软件接口的保护相对有限,但尚未有明确的判例。此案为各国立法和司法实践提供了参考。

技术笔记:API版权保护的边界在哪里?

从技术角度,我们可以总结以下几点:

  1. 声明代码 vs 实现代码:声明代码(方法签名、类定义)更接近“事实”或“规则”,受版权保护的程度较低;实现代码(算法、逻辑)是真正的创造性表达,受保护程度较高。
  2. 互操作性 vs 盗版:如果复制API是为了实现互操作(让不同软件能协同工作),则更可能被认定为合理使用;如果是为了直接替代(如复制一个完整的软件产品),则更可能构成侵权。
  3. 商业用途 vs 非商业用途:商业用途不排除合理使用,但会降低合理使用的可能性。Google虽然是商业公司,但其复制行为具有“转化性”,因此法院仍认定合理使用。
  4. 比例和必要性:复制部分占整个作品的比例越小、越必要,越有利于合理使用的认定。Google只复制了0.4%的代码,且是互操作所必需的。

结语

谷歌诉甲骨文案的判决,不仅仅是一场商业巨头之间的法律纠纷,更是对“软件到底应该开放到什么程度”这一根本问题的回答。在软件行业,API是连接不同系统、不同语言、不同平台的“桥梁”。如果每一座桥梁都需要缴纳“过路费”,那么整个软件生态的互联互通将受到严重阻碍。

最高法院的判决传递了一个清晰的信号:在版权保护与技术创新之间,应当保持微妙的平衡。API作为软件世界的“公共语言”,其合理使用应当得到保护。

这一判决也提醒我们,法律并非一成不变的教条,而是需要随着技术的发展不断调整和适应。正如布雷耶大法官在意见中所言:“版权法的目标是促进科学和有用艺术的进步,而不是阻碍它们。”

原文链接:https://www.supremecourt.gov/opinions/20pdf/18-956_d18f.pdf

相似推荐
最高法院推翻罗诉韦德案:美国堕胎权争议的深度解读面试后 Google 试图为我的研究申请专利:一个关于先有技术与专利制度的警示故事为什么我要起诉美国政府:挑战DMCA第1201条对创新与言论自由的扼杀加州废除私营监狱:一场关于利益、移民与人权的立法博弈美国联邦法院裁定:无合理怀疑不得搜查旅客手机与笔记本电脑朱利安·阿桑奇在伦敦被捕:从“维基解密”到引渡危机的十年博弈
编写使用方法
Markdown 格式 · Ctrl+Enter 确定
0 字新建笔记
欢迎回来
登录你的墨穗笔记账户
忘记密码?
还没有账户?立即注册
创建账户
注册你的专属墨穗笔记
已有账户?去登录
找回密码
输入注册邮箱获取验证码
返回登录
请输入图片中的验证码以继续注册
加载中...
取消
新建收藏
手动添加你喜欢的内容
取消
编辑头像与昵称
上传新头像或修改你的显示昵称
支持 JPG/PNG,最大 2MB
取消

问题反馈

隐私提醒

取消
编辑工具
受控分享
为这篇笔记生成限时 / 带密码的临时链接
关闭