关于 Eclipse 的一场 “三角关系”

具身智能:原理、算法与系统 第16章 运动控制基础 实时迭代(Real-Time Iteration, RTI)策略在每个采样时刻执行有限次迭代(通常一次),利用相邻时刻解的连续性,在严格时间限制内获得可行解。比例-积分-微分(Proportional-Integral-Derivative, PID)控制是工业界最广泛应用的控制策略,其原理基于误差的当前值(比例)、累积值(积分)与变化率(微分)的线性组合。力-位置混合控制(Hybrid Force/Position Control)将任务空间分解为力控制子空间与位置控制子空间,分别控制。 阅读详情

上个世纪 90 年代,世界上的计算机要么不联网,要么在企业内部联网。但是,在互联网的概念下,计算机之间共享信息和资源的需求成为了必要。

1995 年 5 月,Java 横空出世。Java 的父亲是当时凭借 Solaris 操作系统风头正盛的 SUN 公司。当时,大多数高级语言的程序在运行前需要根据不同的计算机进行编译,然后才能运行。Java 这种高级程序语言不需要与硬件相关的编译器,而是在运行时边解释边运行。如此一来,Java 程序就不受计算平台限制,正好满足了共享的需求。

可想而知,Java 的流行是个必然。但是,Eclipse 的大火却是大家没想到的。Java 好用,但相应的编译器却不好用。而且,当时的编译器少得可怜,一款开源且好用的 Java IDE Eclipse 打遍天下无敌手。

那时候,开源基金会也少得可怜。2004 年,Eclipse 成立基金会,摇身一变成为全球知名的开源基金会。再然后,随着 SUN 被 Oracle 收购,Oracle 又将 Java EE 捐赠给 Eclipse,它由此成为 Java 大本营的重要基石。

如今,Java 已被唱衰多年,多少新涌现的语言说要取代 Java。现在,开源基金会也像雨后春笋一般,Eclipse 基金会几经重大变化。还会有人对他们的故事感兴趣吗?

一段三角关系

如果不去特意追溯,任谁也想不到 Eclipse 开源基金会背后站着的是蓝色巨人 IBM。

IBM 一直是专利大户,多年来都是拥有专利最多的公司,甚至没有之一。他们养了一支庞大的知识产权律师团队,对侵犯专利者重拳出击。似乎,IBM 与开源天生绝缘。

但利益是永恒的。1996 年,IBM 收购了开发 Smalltalk 和 Java 集成开发环境 VisualAge 的 OIT(Object Technology International)。据说,当时 VisualAge 的代码价值 4000 万美元,IBM 眼都没眨就说要消除不兼容的开发环境这个市场痛点,要增加这些环境中通用组件的重用性。2001 年,一个天生为开发环境集成平台而设计的产品诞生了,它日后成为了整个 IBM 工具策略的基础。

IBM 给这个产品取名为 “Eclipse”,有 “日食” 的意思。很多人说这个是非常糟糕的名字,在此之前有 Eclipse 汽车,有 Eclipse 口香糖,还有 Eclipse 女子足球组。IBM 的律师也反对这个已经烂大街的名字。 

但 IBM 一意孤行。2001 年 11 月,IBM 用一个让人无法拒绝的价格从足球队手里购买了 eclipse.org 域名,非要用这个名字。更想不到的是,Eclipse 是开源的,IBM 为它建立了开放源代码许可和运营模式,不仅贡献大量源码、开发者,还有关于开源协议的法律咨询援助。

这是 IBM 最大胆的开源 “赌注”。

—— IT 咨询公司 Illuminata 分析师 James Governor

IBM 的开源决定是一次革命性的举措。那个时候,软件开源协作开发还是十分新颖的想法,Eclipse 的成功展示了开源模式的优势。

—— Eclipse 基金会执行董事 Mike Milinkovich

话说回来,这个名字多少带点针对 SUN(太阳)公司的意思。SUN 对此一直耿耿于怀,与此同时,Eclipse 展现了强大的能力,让 SUN 自带的编译器 NetBeans 黯然失色,逐渐成长为 Java IDE 的老大。

2004 年,Eclipse 正式宣告独立出来,成立 Eclipse 开源基金会,而且总部设立是在加拿大渥太华,不再依赖于创始者 IBM,而是转向行业,让其它技术供货商、甚至是 IBM 的对手加入 Eclipse 董事会,协助决定未来方向。

面对这一邀请,SUN 公司的第一反应是不。据知,在 Eclipse 基金会成立前夕,SUN 就在考量要不要加入,除了技术层面外,其中最主要的一个关注就是 Eclipse 这个名字。SUN 表示,如果基金会不同意改名字,他们就不准备加入。还有该公司高管也表示,不会加入一个名字中带有要消亡 SUN 公司的组织。

当时,业界普遍认为 IBM 独占 Eclipse 主导地位,想要推动自家的 Java 软件,这让 IBM 与 SUN 之间产生间隙。但那时,IBM 主管也曾驳斥传言,说取名 Eclispe 不是克制 SUN 的意思,请不要自作多情。

第三者微软,在 2005 年才浮出水面。2005 年 3 月 EclipseCon 大会的主题演讲中,IBM Rational 软件部门 CTO 兼设计、构建和测试工具副总裁的 Lee Nackman 表示,微软公司才是 IBM 想要 “吞噬” 的公司。

我们的目标是微软。微软是市场的领导者,并且正在成为主导市场的工具平台。显然,我们需要争夺更多的开发者群体。所以,在 1998 年左右,我们觉得应用服务器和中间件的竞争是关键,我们需要把开发者带回到基于 Java 的中间件上来。

2001 年初,IBM 看到 Visual Studio 和微软生态不断成长,非常困扰。我们决定与 Windows 和 Visual Studio 进行竞争。因此,Eclipse 的目标过去是,现在也是微软,而不是 SUN 公司。

好一出峰回路转的单箭头大戏,任谁都会说一句 IBM “不娶何撩”?但是,冷静想想,一切又似乎都有迹可循。

不谈 IBM 与微软那笔 DOS 操作系统的 “旧债”。21 世纪初,互联网爆发,依靠个人电脑崛起的微软如日中天,Windows 在手之外,它还要开发 C# 语言和 .Net 平台,要与 Java 一争高低。这在重仓 Java 的 IBM 眼里,可谓是 “旧债加新仇”。

2004 年 Eclipse 基金会成立,就有不少人猜测,这将有助于抵挡微软工具与 Windows-based 软件的竞争。要想增强竞争力,IBM 或者是 Eclipse 必须拿出更强势的产品。

然而,IBM、SUN 和微软之间的三角关系并没想象中那么简单。因为微软与 SUN 之间也曾有一段 “爱恨情仇”,这佐证了微软就是在打压 Java。

Java 一降生,SUN 就抱有通过 Java 实现跨操作系统平台的梦想,这让微软很是眼馋。1996 年,微软向 SUN 公司购买了 Java 的授权。但是,微软并没有依合同向用户提供用 Java 开发的产品,而是通过 SUN 的技术,搞自己的类似产品。

为此,SUN 把微软告上法庭。这场官司直到 2001 年才以 SUN 获得胜利告终,当时法院判定:微软误导 Java 开发者、阻碍他们开发兼容 Java 技术的产品,从而打压 Java。然而,此时微软的 ASP 已经获得了更大的市场占有率。

一滴时代的眼泪

战胜 Visual Studio 和微软生态那个点,Eclipse 曾经一度非常接近过。可惜,却无疾而终。在知乎相关问题中,排名第一的答案多少有点情怀向了。

的确,Eclipse IDE 是 Eclipse 基金会的第一个王牌项目。当年,Java 开发没有统一天下的 IDE,稀少又昂贵,Eclipse IDE 以开源和免费的姿态出现在大家面前,而且速度相对更快,又有 Google 支持,还在各种教科书中备受推崇,让不少人如获至宝,口碑极盛。

下面这两张图, Eclipse 基金会执行董事 Mike Milinkovich 在多个演讲中都拿出来过,以佐证 Eclipse IDE 曾经一骑绝尘:

转折点出现在 2014 年 Eclipse 4.4 Luna 的发行。如果说之前的 Eclipse IDE 瑕不掩瑜,那么后几年中发展中,它的弊端就渐渐显现出来了。曾有一篇唱衰 Eclipse 的文章直指这一版本:

如果说有一个时间点,标志着 Eclipse 的死亡,那这个时间点一定是 Eclipse 4 的发布。在 Eclipse 3.x 时代,Eclipse 做的很不错,统治着所有开发工具。但是突然间,好像他们决定要亲手终结自己的生命,他们改写了所有 UI 代码。

在 3.x 时代,Eclipse 是一个速度非常快的 IDE,每一次 Release,它都添加了各种实用的功能。而 Eclipse 4,一切都变了,运行速度变慢,UI 错误不断,而且还很丑陋。好像 Eclipse 一下退步了好几年。

有些人将原因归结于 Eclipse 不再看重 IDE 产品,而更乐忠于推广 Eclipse 基金会;也有人认为 Intellij 才是 Eclipse 式微的真正元凶:“每一次在使用 Eclipse 的时候,你都会感到,你还在使用它的唯一原因,就是太穷,买不起 Intellij。”

此前,2013 年 6 月的 Google I/O 大会上,Google 推出新的 Android IDE “Android Studio”。本来,是与 Eclipse 合作开发;随后,谷歌 “反水”,投身 IntelliJ,打造出今天的 Android Studio。由此,这次大会上的 “Android Studio”,最大的转变就是从 Eclipse 切换到了 IntelliJ IDEA。

2013 年~ 2014 年,似乎成为了 Eclipse 及其基金会的分水岭。资料显示,2012~2014 年 Eclipse 基金会出于财务亏损状态。

旋即,2015 年 6 月,Google 重点决定建设 Android Studio,并宣布在年底停止支持其他集成开发环境,比如 Eclipse。8 月,Eclipse 基金会开始向个人或组织寻求捐助来为它的开源项目提供资金。

与此同时,Eclipse 基金会也表示,初期他们的重点放在改进核心 Eclipse 平台、JDT 和 Web 工具,未来会扩展到更多项目。这是一个转型的信号。

如今,据 2022 年 5 月份的数据来看,Eclipse IDE 依旧占据在榜单第二的位置,受到了 14.21% 份额的关注度,似乎并没有像别人所鼓吹的那般滑落神坛。

https://pypl.github.io/IDE.html

但是,他们似乎已经放弃了追赶微软的计划。在 2021 年的年度报告中,他们的战略目标包括:传达 Eclipse 基金会的差异化价值主张、将 Eclipse 基金会建立为卓越的欧洲 OSS 组织、培育新兴技术的项目和工作组等等。

要知道,曾经十余年中,他们的年度报告战略位置,排在第一的永远都是 “成为首选开发者平台” 这样类似的表述。

一场失败的谈判

2018 年是 Java 社区发生重大变化的一年,因为企业 Java 的管理权从 Oracle 和 Java Community Process (JCP) 手中被转移到了 Eclipse 基金会。有必要提一嘴的是,之所以是 Oracle,是因为 SUN 在 2010 年被它收购了。

Mike Milinkovich 在一场采访中如此表述这项转移:

我们绝对欢迎 Java EE 加入 Eclipse 基金会。虽然这是一项繁重的工作,但 Eclipse 基金会在 Java 社区和企业中有着深厚的根基。

我们觉得这是天作之合,也是我们的绝佳机会。除此之外,我认为 Jakarta EE 会促使许多开发人员最终认识到 Eclipse 基金会还有我们的 Java IDE 以外的项目。

很明显,在 Eclipse 基金会看来这是一件好事,这巩固了 Eclipse 基金会在 Java 世界中的重要地位。但不知道大家发现一个 “华点” 没有,转移后的 Java EE 被改名为 Jakarta EE 了。这缘于一次失败的谈判。

简单来说,Oracle 捐赠 Java EE 给 Eclipse 基金会有几个条件:

1)Eclipse 基金会发行的产品(如 Eclipse IDE)必须只能捆绑由 Oracle 认证(而不是任何其他供应商认证)的 Java 运行。这一条会损坏了该基金会 “供应商中立” 的立场。

2)Oracle 要求 Eclipse 基金会不能修改旧的代码,如需修改则要重命名,包括项目名称和软件包的名称。这意味着现有的应用程序无法在没有重构和重新编辑的情况下运行在更新后的平台上。

有点霸王条款的意思的了。不少人在当时劝 Oracle 允许 Eclipse 基金会继续使用 Java 的名字,毕竟 Java EE 之前就是从 J2EE 改名过来的,频繁地改名会造成使用者的困扰,导致市场混乱。

但 Oracle 没有让步。在长达数月的谈判之后,两者最后达成的共识是:Jakarta EE 不能发布针对基础库 javax 的修改包,Jakarta EE 规范也不能使用包括 Java 商标的现有规范名称。

因此,有人担忧 Oracle 会在一定程度上杀死 Java EE。但最重要的是,这凸显了开源基金会在大企业面前的弱势地位。

一次搬家的背后

2020 年 5 月,Eclipse 基金会宣布将总部搬往欧洲的比利时布鲁塞尔。

在计划中,2020 年 7 月这一搬迁就要完成。届时,Eclipse 基金会将在比利时、加拿大和美国设立总部,但其官方总部将设在欧洲。而 Eclipse 和 Eclipse Foundation 的名称、商标和品牌将由新的比利时实体控制。而且,未来 Eclipse 基金会的会费以欧元计价。

除此之外,Eclipse 基金会还正在建立一个基于 GitLab 的新平台,托管在欧洲的服务器上。

这让人不得不联想到 2019 年的微软收购 GitHub 事件。当时,微软 —— 这个 Eclipse 的宿敌正在史无前例地加大对开源的支持力度。这让 Mike Milinkovich 感到担忧:

微软正在走向另一种形式上的完全垄断,可能危及包括 Eclipse IDE 等在内的其它公司和项目。GitHub + VS Code 的组合已经非常流行,这种单一性文化会引发忧虑。 

当然,我们也不能将 Eclipse 基金会的这次搬家归结于微软,这次行动的确有战略上的必要性:

首先,Eclipse 基金会有三分之二的提交者位于欧洲国家。Mike Milinkovich 表示, Eclipse 基金会已经是欧洲最大的开源组织;

其次,Mike Milinkovich 认为欧洲越来越重视开源和开发的价值,而且尽管欧洲有一些开源组织,但它们主要坚持单一项目,并没有托管数百个项目这样体量的开源基金会。这对 Eclipse 基金会是个机会,让它建立起一个真正的全球开源机构。

我们(Eclipse Foundation)在美国的工作多少有些局限了自己。在美国,我们的确和一定数量的研究实验室和政府机构和合作,一些美国资助的研究机构也和我们有联系。

然而,在我看来,欧洲在政策层面上是要比美国先进的,欧洲的研究机构更加愿意从外部去拥抱开源。近来,欧洲越来越倾向于使用开源的方法来达成研究成果的发表和传播。多年来,他们一直鼓励研究者或者开发者建立社区。

—— Mike Milinkovich

结语:物是人非,分久必合。

日转星移。IBM/Eclipse、SUN 和微软之间的爱恨情仇,似乎已经随风飘散了。

2010 年,SUN 公司被 Oracle 公司收购。2018 年那场与 Oracle 谈判虽然失败,但那早已与 SUN 无关了。Eclipse 拿到了 Java EE,进一步巩固了自己在 Java 社区中的权威。

2021 年 8 月,微软宣布
将成为 Eclipse 基金会的战略成员,并且加入其董事会。

其实,早在 2016 年,微软就以解决方案成员的身份加入了 Eclipse 基金会,并在当时提供了一套开发工具和服务。现在,两者之间的合作更加紧密了。微软盛赞 Eclipse 基金会:

1)Eclipse 基金会在供应商中立治理、基础设施、营销、社区建设和开发人员倡导工作方面拥有深厚的专业知识。

2)Eclipse 基金会仍然是 Java 生态系统的重要基石,与 Java 社区的核心部分有着密切的联系。

3)Eclipse 基金会正在通过工作组扩大其作用,其中许多工作组对 Microsoft 及其合作伙伴很重要。

果然啊,三十年河东,三十年河西。

【数据集3】高分辨率统计降尺度日值数据集NEX-GDDP的介绍与下载方法 对NEX-GDDP数据集进行介绍和下载说明 阅读详情

相关推荐

从零搭建 AI 运维 Agent:告警自动诊断 + 修复的完整技术方案

适合读者:管理 5-50 台服务器的运维/SRE 工程师、技术负责人 技术栈:FastAPI + React + PostgreSQL + Redis + DeepSeek 关键词:AI运维、AIOps、自动化运维、智能告警、告警修复、Runbook自动化、DevOps、SRE、DeepSeek运维

weixin_38359457的博客 1640

十大开源软件基金会你知道哪些?

伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**

2401_83641360的博客 782

【GAN实战】基于pytorch-CycleGAN与pix2pix的自定义数据集训练全攻略

本文详细解析了基于PyTorch的CycleGAN与pix2pix模型在自定义数据集上的完整训练流程。核心在于根据数据是否成对来正确选择模型:pix2pix适用于严格配对的“孪生”数据,而CycleGAN则擅长处理非配对的“散装”数据集。文章从数据准备、配置训练到测试应用,提供了全链路实战指南与关键参数调优心得,帮助开发者高效实现图像到图像的风格转换。

x2y3z4a5b的博客 704

Eclipse基金会

Eclipse基金会项目       Eclipse基金会的所有开发活动都以项目的方式组织,目前有八个一级项目,在每个一级项目下又有多个二级项目。这八个一级项目分别是:l        Eclipse项目(The Eclipse Project);l        Eclipse工具项目(The Eclipse Tools Project);l        Eclipse技术项目(The Ecl

Pamir的春天 4786

Java本地AI推理初体验:Jlama+LangChain4j构建离线问答系统

Jlama 是专为 Java 生态设计的现代化大型语言模型(LLM)推理引擎,旨在让开发者无需依赖外部服务即可直接在 Java 应用中运行本地化模型推理。本文将结合Jlama + langchain4j 实现一个本地可运行的简单问答Demo。

2501_92589102的博客 407

【matlab】基于 Simulink 的空调恒温控制系统仿真建模

本文介绍了基于Simulink的空调恒温控制系统仿真建模方法。系统采用PID控制算法,通过传感器测量温度、控制器计算信号、执行器调节功率来实现恒温控制。文章详细阐述了Simulink模型搭建步骤,包括PID控制器、房间热力学特性模拟等模块的实现,并提供了测试流程和多种实际部署场景。该方法可有效验证控制算法性能,优化系统设计,适用于家用、商用、工业及汽车空调系统。未来可结合智能算法和节能优化技术进一步提升系统性能。

走向CTO的路上... 920

Eclipse基金会发布最新边缘计算开发者调查报告

作者:路多物联网智库 整理发布日前,Eclipse 基金会对全球千余名开发者、提交者和架构师等进行调查,发布了《2023物联网&边缘计算开发者调查报告》,该报告由Eclipse IoT、Eclipse Sparkplug工作组负责,提供了有关物联网和边缘计算行业格局、开发者面临挑战及物联网和边缘开源生态系统中企业利益相关者对于机遇的见解,并为物联网开发人员提供了详细建议。精华部分整理如...

边缘计算社区 439

ICML-2025《Learning from Sample Stability for Deep Clustering》

用于指导深度聚类模型的训练,从而提升模型对困难样本的学习能力,最终改善整体聚类性能。首先,利用K-means在原始样本(非增强)的表征上进行聚类,得到初始聚类分配。其目的是鼓励模型对同一稳定样本在连续epoch中产生相近的表征。输出差异大)会产生更大的损失值,从而引导模型优先优化这些困难样本。此损失借鉴了NT-Xent损失的思想,但将正样本对定义为。最后,通过对比学习优化聚类中心,将同一聚类在。为了获得更具代表性的聚类中心,论文提出。为了学习更鲁棒的表征,模型在在线网络。首先,论文定义了样本。

Christo的博客 829

你知道哪些开源基金会?

从 RMS 创立 FSF 发起自由软件运动,再到 OSI 成立并明确开源软件定义,这种崇尚开放协作的软件开发模式迅速席卷全球。除 FSF 与 OSI 外,还陆续诞生了许多致力于推广和发展开...

dotNET跨平台 2077

大厂面试:字节跳动大数据面试题及参考答案(10万字长文及多张原理图持续更新)

在 Spark 中,宽窄依赖是用来描述 RDD(弹性分布式数据集)之间的依赖关系的概念。窄依赖是指父 RDD 的每个分区最多被一个子 RDD 的分区使用,即子 RDD 的分区可以通过确定的规则从父 RDD 的分区计算得到,并且不需要跨节点进行数据传输。窄依赖通常可以在一个节点上进行计算,不需要进行数据的 shuffle 操作,因此性能较高。宽依赖是指父 RDD 的一个分区可能被多个子 RDD 的分区使用,即子 RDD 的分区需要通过跨节点的数据 shuffle 操作从父 RDD 的多个分区获取数据。

大模型大数据攻城狮的专栏 1651

LPDDR6与LPDDR5 channel/rank/die/bank技术探讨

LPDDR6与LPDDR5 channel/rank/die/bank技术探讨

zilan23的博客 3648
上一篇: 十八、学习Lua 调试(Debug)
下一篇: CAS SSO单点登录服务端环境搭建
m0_72864708
博客等级 码龄4年 3727粉丝 1114原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值