世界上最流行的编程语言,被Oracle锁在牢笼里......

刘欣 2025-11-30 09:48:00
10多年前,国内著名的技术网站JavaEye发表了一个声明:由于Oracle的强硬要求,只能被迫放弃已经运营了7年的JavaEye域名和JavaEye品牌,更名为ItEye。

 

 

这件事在当时震动挺大的,很多人是第一次意识到:Java这个名字真是不能随随便便使用的啊!

 

自己玩玩儿没问题,但是一旦做大,有了商业利益,Oracle的法务团队立刻就把你盯上了。

 

 

这也没办法,Oracle拥有Java的注册商标,当它挥舞起法律大棒的时候,几乎无人可以抵挡。

 

很少有人知道,JavaScript也是Oracle的注册商标!

 

 

也就是说,使用JavaScript这个名称也存在当被告的风险。

 

一、遗产

 

1995年,Netscape公司的布兰登开发了一个用于浏览器的脚本语言:LiveScript。

 

 

同一时期,Sun的 Java 语言正在大火,为了蹭Java的热度,Netscape和 Sun 达成了品牌授权协议,把 LiveScript 改名为 JavaScript,以强调它是Java的“小兄弟”,能和 Java 一起使用。

 

“Java” 是 Sun 的注册商标,“JavaScript” 这个名字中含有 Java,因此商标必须由 Sun控制。

 

 

2009年,Sun被Oracle收购,JavaScript商标也被转入Oracle怀抱。

 

 

但是,和Java不同,Oracle虽然持有JavaScript商标,从未认真推出过一款名为 JavaScript 的产品。

 

它没有推出自己的浏览器,也没有参与JavaScript引擎(V8、JavaScriptCore、SpiderMonkey)的开发。

 

它虽然也是ECMAScript技术委员会的成员,但不主导标准制定,也没有主要提案。

 

这件事儿听起来挺魔幻的,Oracle似乎是为了持有而持有。

 

但是,Oracle却时不时地挥舞法律大棒,维护下自己的权利。

 

2017年,AppStore的某位开发者收到通知,说其 App的名称(HTML, CSS,JavaScript Snippet Editor)未经授权使用了 “JavaScript” 字样,必须下架。

 

开发者很无奈,只好把JavaScript改成了JS。

 

 

2023年,Oracle又给Cloudflare的首席系统工程师Sid Chatterjee发了一封律师函,要求Sid把“Rust for JavaScript Developers”这个公司的名称改掉,因为它使用了“JavaScript”,侵犯了Oracle的权益。

 

 

正是因为如此,一些公司和组织不得不避嫌了,不得不使用一些奇怪的名称:

 

1、ECMAScript

 

很多新程序员看到这个名字都很惊讶,明明是JavaScript,为什么起个这么古怪的名字?还有什么ES5、ES6的......

 

这就是因为当年Netscape想标准化JavaScript的时候,没法用JavaScript这个名字,只好临时以标准化组织ECMA的名字作为占位符,后来干脆转正,变成了ECMAScript。

 

这个名字实在糟透了,即使是WebScript、DOMScript、HTMLScript都比它好,怪不得JavaScript创始人布兰登说听起来像一种皮肤病。

 

2、JSConf

 

使用JavaScript的程序员创建了无数的社区组织,他们想开个会都得避嫌JavaScript,只能叫JSConf。

 

世界上最受欢迎的编程语言,甚至连一个以其命名的会议都做不到,可悲啊。

 

二、抗争

 

2022年9月3号,Node.js的作者Ryan Dahl写了一篇博文,希望Oracle能体面地放弃JavaScript商标,让大家可以自由地使用这个名称。

 

 

后来他干脆给Oracle写了一封公开信,再次请求Oracle释放JavaScript商标。

 

 

这封信获得了27785名支持者的签署,也包括了各路大牛:

 

 

许多人得知 Oracle 竟然宣称拥有 JavaScript 的所有权后都感到震惊,但 Oracle 仍然保持沉默。

 

2024年11月,Ryan Dahl所在的Deno公司启动了法律程序,正式向美国专利商标局提交申请,要求撤销 Oracle 对“JavaScript”的商标权。

 

这次申请的理由非常充分:

 

1、通用性:JavaScript已经成为通用的名称,被全球数百万开发者使用,它不是一个品牌,已经是现代编程的基石。

 

2、放弃使用:Oracle 多年来未曾以“JavaScript”为名提供任何重要的产品或服务,Oracle 不控制、维护或执行该商标。

 

3、欺诈:Oracle 在续展商标的申请中提交了误导性证据,居然将将 Node.js 作为 Oracle“商业使用”的证据。

 

这一次,Oracle强大的法律团队开始发力了。

 

他们首先时拖延到了最后期限才开始回应,并且很巧妙底对第三项(“欺诈”)发起攻击,说Oracle在续展商标申请时,不但提交了Node.js作为证据,而且也提交了自家产品Oracle JET作为证据。

 

Oracle JET是啥? 

 

这是个UI相关的包,使用量极小。

 

网友@threecheese说,它的 npm 包每周下载量约为 1000 次,有四个包在依赖它,如果你沿着依赖树往下看,几乎全是其他Oracle 包或早已失效的演示/一次性程序。每周 1000 次下载可能全部来自其他 Oracle 项目的 CI 流水线。

 

经过一系列来回的交锋后,今年6月份,商标审判和上诉委员会驳回了第三项的指控。

 

但是欺诈并不是案件的核心,“通用性”和“放弃使用”才是,目前这个案件还在进行中。

 

三、结语

 

Ryan Dahl在公开信中所说,Oracle能从JavaScript商标中获得的最大价值,就是将其授予公众以后获得的良好声誉。

 

Oracle为什么不这么干呢?

 

因为这是Oracle的一种防御性资产,它不需要花钱开发,只要按期续展,并且能在必要时阻止别人滥用或混淆 “Java/JavaScript” 品牌。

 

一句话总结:放弃无利可图但有风险,保留没成本却有控制力。这也是很多大公司处理“遗产型知识产权”的典型策略。

 

未来如何,让我们拭目以待吧。

 

本文作者

刘欣著有畅销书《码农翻身》,《半小时漫画计算机》,前IBM架构师,领导过多个企业应用架构设计和开发工作;洞察技术本质,擅长用故事去讲解复杂技术。

 

来源丨公众号:码农翻身(ID:coderising)
dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn
最新评论
访客 2024年04月08日

如果字段的最大可能长度超过255字节,那么长度值可能…

访客 2024年03月04日

只能说作者太用心了,优秀

访客 2024年02月23日

感谢详解

访客 2024年02月20日

一般干个7-8年(即30岁左右),能做到年入40w-50w;有…

访客 2023年08月20日

230721

活动预告