写点什么

InfoQ 与 Jason Van Zyl 探讨 Sonatye、Eclipse 基金会和 Maven

  • 2008-08-12
  • 本文字数:3325 字

    阅读完需:约 11 分钟

Snoatype ,这家推动 Maven 发展的主要公司,最近宣布他们准备以战略开发者身份加入Eclipse 基金会。InfoQ 就此采访了Sonatype 首席技术官和Maven 创始人 Jazon Van Zyl ,以了解他们的合作关系及对 Maven 未来的影响。InfoQ: 您能否详细描述一下,与 Eclipse 的紧密联系会对 Maven 产生什么影响?

Jason Van Zyl: Maven 和 Eclipse 的用户社区存在巨大的重叠。Sonatype 非常希望联姻这两个用户社区,提供两个平台之间的无缝集成。特别是用户将受益最多。 Sonatype 与 Apache Maven 社区保持了长期的关系,我们正在努力培养与 Eclipse 的这种关系,在 Maven 和 Eclipse 社区之间建立一座桥梁。这两者之间一直以来 存在着一点紧张关系:关于如何构建软件、依赖管理系统如何工作、二进制文件应该存放在何处。我们正在建立实用的混合解决方案使开发人员能够完成他们的工 作。

_InfoQ:_ 这种合作关系在短期和长期会如何影响 Maven?

Jason Van Zyl: 短 期来看,从技术角度讲,m2eclipse 集成方案让我对 Maven 提供的嵌入技术做了认真的审视。我们已经修改了它的许多方面以方便在 Eclipse 平 台上运行 Maven。从社区的角度讲,大量的用户汇聚到 m2eclispe 上:邮件列表在迅速增长,我们让用户提交了许多新的功能需求,用户对我们创建的 新鲜工具例如 POM 编辑器反应积极。在头四个月下载量接近 10 万次,这对于 pre-1.0 版本来说是相当惊人的。

这一切引起了大量的反馈,也推动了 Maven 内核的变化。许多用户期望在 Eclipse 中增加的行为和可视化界面让我们意识到性能的问题,并开始知道如何发 布 Maven 内核的事件。Maven 是可扩展的,但是如何暴露给 Eclipse 强大的扩展点机制,让我们开始考虑如何在 Maven 平台上提供正确的地方用 于扩展、如何确保在 Eclipse 平台是可见的。

一 个具体的例子就是如何在 Eclipse 中暴露我们的 Nexos(Sanatype’s 存储管理器)API,让其他 Eclipse 插件可以查询并获取 Maven 存储的文件。这例子很简单,但非常强大,因为它允许开发人员实现类似“我想在我的 企业库中找到所有代表 web 服务的 API”的想法,同时允许开发人员间接地选择一系列 web 服务、重新组合成一个新的应用。

从 长期来看,Sonatype 是 Eclispe 基金会的战略开发者,这意味着我们在 Eclipse 委员会拥有一席之地,我们有机会影响 Eclipse 平台的 发展方向。当然,没有哪一个组织可以为所欲为。一切都通过对话解决。作为战略开发者,Sonatype 需要提供 8 位全职的员工致力于 m2eclipse, 而且这项工作的大部分都是在 Maven 本身,长期来看有利于 Maven 社区。Maven 通过 Eclispe 社区获得了巨大的关注。

Apache 和 Eclispe 社区,在我看来,是非常互补的。Apache 起源很早,汇集了开源的热情,但有一点混乱。Eclipse 对开源有着更专业和商业化的认 识。这两者对于创建一个支持用户的工程生态环境都是必需的。你可以在 Apache 看到非常热烈讨论,甚至是反对的声音,但是对创新有益。如果一切都是相同 事物的堆砌,没有新事物会诞生。Apache 决不是这样的。但是,当涉及到发布一个产品时,Eclipse 的价值就体现出来了:对知识产权、版本之间高层 次 API 的兼容性、发布时间表中严峻情况的处理等这些的详细关注。对我来说,创建混合系统,兼容并蓄这两个社区来生产类似 m2eclispe 的工具是最理 想的。

从长期来看,Sonatype 与 Eclispe 的合作关系会在 Maven 工程中细化为对发布计划、消灭退化问题和增加与用户沟通的更多关注。这在 2.0.9 和 2.0.10 版本中已经开始了,那时我们通过一个可扩展的版本候选周期来消灭退化问题。

_InfoQ:_Maven 2.1 预计何时发行?其功能包括哪些?这会产生什么影响吗?

Jason Van Zyl: 目前,我们没有公开讨论时间表。我可以说,我们正在努力尽快发布 Maven 2.1,与 Eclispe 的合作关系的确也起到了推动作用。Maven 2.1 新增的一个主要功能是嵌入技术,这对 m2eclispe 非常重要。现在,我们准备发布 Maven 2.1-alpha-1,我们正在努力确认运行在 2.0.x 版本上的插件的兼容性,这样可以帮助用户非常容易过渡。Eclispe 也只针对发布版进行知识 产权审查流程,因此我们正在积极准备该版本,希望在 Eclispe 知识产权流程中不出什么大的问题。其结果非常乐观。

InfoQ: 社区的反馈对 Maven 产生了什么影响?

Jason Van Zyl: 在 Maven 的最近两个版本中,我们的确以客户为中心。我们努力修补了所有退化问题,添加了最强烈需要的功能。对于 m2eclispe 插件,我们实现了大多数功能,包括工程对象模型(POM)编辑器和 Mexus 存储管理集成。

InfoQ: 在 Maven 的未来发展中,Sonatype 将扮演什么样的角色?

Jason Van Zyl: 在 Sonatype 公司中,有很多员工是 Apache Maven 的长期提交者和 Apache 成员,因此我们一直在深入参与 Maven 的开发。差不多五年前的这个时候,我发起了 Maven 工程,我也没有计划如 何发展。我会继续推动 Maven 社区前进。作为一个商业工作的显而易见的结果,我们会投入更多的人去参与 Maven 相关的技术,所以 Sonatype 将继 续在 Maven 社区中扮演一个关键角色。我想客户提出的很多事情都具有普通的意义,所以我觉得我们所做的工作有利于整个 Maven 社区。我们做了大量 OSGi 集成,还有脚本语言集成,很多人会对这些感兴趣。最后,Sonatype 的参与让那些通常会诞生的技术集成出现的更早一些。

InfoQ: 是否计划在未来版本中,将 Maven 的模块系统以 OSGi 作为规范?

Jason Van Zyl: 是 的!这个集成工程称为 Tycho。它将提供基于 Maven 的解决方案,创建 OSGi 束和 Eclispe 插件。我们目前的原型已经颠覆了 Maven 通常的依 赖解析机制而采用了基于 OSGi 的依赖解析机制。我们可以创建无 POM 的基于 OSGi 的工程。这项工作也涉及到与 p2 存储的交互。我们想要提供的是一套使 用 Maven 用于基于 OSGi 开发的端到端解决方案。我们的许多工作涉及到存储,同时在很大程度上取决于我们在 Nexus 上的变化,它在 Maven 存储、 标准 Eclipse 更新网站和 p2 存储之间提供一个中间层。我们一直在努力做好 Tycho,我们相信它将提供在 Maven 和 OSGi 世界之间所需的统一 / 集成层。Tycho 也将随着 m2eclipse 移入 Eclispe 基金会。

以下是 InfoQ 读者对于该新闻的精彩讨论:

关于 IDE 中立的支持?Aug 6, 2008 6:52 AM by Sébastien Arbogast

每次我听说一个优秀的开源工程与 Eclispe 基金会建立紧密的伙伴关系我都会有些担心,因为这会让这些工程禁锢于某些厂商。不管你们是否相 信,Eclispe 不是最好的集成开发环境(IDE),很多开发人员使用其他的工具。Maven 一个伟大的地方就在于它是 IDE 中立的,所以我可以在 Intellij 上使用 Maven 工程,而我的同事则在 Eclispe 上使用,一切都很顺利。现在,我担心 Maven 这种新的转移会产生只在 Eclispe 可用的功能而不是其他 IDE。相同的事情正在发生于 SpringSource,Adobe 等等,非常糟糕!

Re: 关于 IDE 中立的支持? Aug 6, 2008 7:44 AM by Eugene Kuleshov

Maven 过去是将来也必定是 IDE 中立的。但是,如果你想获得好的 IDE 支持(这对于其他工具同样成立,不仅仅是 Maven),你不得不用与 IDE 厂商 协商。很自然地,如果它是开源的,像 Sonatype 或者 Springsource,你可以期望良好的 IDE 集成。这并不意味着偏向某个厂商,只是某些厂 商具有更好地工具集成。从根本上说,你评价 IDE 优劣的标准并不适用于其他人。更一步讲,似乎你不太满意 Spring 和 Adobe 对你的 IDE 的支持,所以你或许应该重新评估一下你的标准或者要求你的 IDE 厂商对你正在使用的技术提供支持。

Re: 关于 IDE 中立的支持? Aug 6, 2008 5:54 PM by Rod Johnson

只有 Spring IDE SpringSource 工具包 是基于 Eclipse 的。我们在 SpringSource 应用平台中使用 Eclispe Equinox,但并没有绑定到 Eclispe IDE。

JetBrians 已经在持续构建 Spring 对 Intellij 的更好支持,我相信也存在一个 NetBeans 插件。我们没有资源对每一个 IDE 提供支持,我们认为最好是对最流行的 IDE 提供附加值。

我们的工具包基于 Eclispe 是因为它的普及和可扩展性,也因为我们非常高兴的看到 AJDT 和 Mylyn 让我们如何方便的做产品支持。

Rod Johnson, SpringSource

查看英文原文: Jason Van Zyl Discusses Sonatype, The Eclipse Foundation and Maven

2008-08-12 07:501315
用户头像

发布了 501 篇内容, 共 280.7 次阅读, 收获喜欢 64 次。

关注

评论

发布
暂无评论
发现更多内容

大选获胜,盘点特朗普相关加密货币资产

TechubNews

MES系统助力中小企业数字化转型

万界星空科技

数字化转型 生产管理系统 mes 万界星空科技 中小企业数字化转型

怎么在线画用户旅程图?分享10个用户旅程图模板!

职场工具箱

职场 产品经理 在线白板 绘图工具 用户旅程图

5分钟搞懂 Golang 数据库连接管理

俞凡

golang

2024-11-13:求出所有子序列的能量和。用go语言,给定一个整数数组nums和一个正整数k, 定义一个子序列的能量为子序列中任意两个元素之间的差值绝对值的最小值。 找出nums中长度为k的所有子

福大大架构师每日一题

福大大架构师每日一题

淘宝商品关键词API接口:智能分析关键词数据,提升电商运营效率

代码忍者

API 接口 pinduoduo API

哇喔!20种单例模式的实现与变异总结

威哥爱编程

Java 设计模式 单例模式 JavaEE

Serverless 微服务治理神器: 阿里云 SAE 全链路灰度揭秘

阿里巴巴云原生

阿里云 Serverless 云原生

【JIT/极态云】技术文档--审批事件

武汉万云网络科技有限公司

覆盖30个省市自治区万余家医疗机构,原生鸿蒙助力打造智慧医疗便利体验

最新动态

GitLab 出现 500错误怎么解决?

极狐GitLab

gitlab

2024年AI办公工具API:优化工作流程的智能解决方案

幂简集成

API

公链数字钱包开发与加密钱包App原生开发

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

快递鸟单号识别API接口代码操作流程

快递鸟

快递

淘宝订单信息获取接口,淘宝订单信息获取API

tbapi

淘宝API接口 淘宝店铺订单接口 天猫店铺订单接口 淘宝店铺订单API

GitLab 如何降级安装?

极狐GitLab

鸿蒙网络编程系列47-仓颉版UDP客户端

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

尝鲜智能体,今年双十一“快递100”用上混元大模型

极客天地

【JIT/极态云】技术文档--模型事件

武汉万云网络科技有限公司

操作系统大会2024即将在京召开,见证openEuler发展新里程

科技热闻

区块链NFT项目开发流程

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

Python 如何根据给定模型计算权值

不在线第一只蜗牛

Python 深度学习

AI时代的研发生产关系,是否有新的可能?

思码逸研发效能

【问卷调研】HarmonyOS SDK开发者社区用户需求有奖调研

HarmonyOS SDK

第74期 | GPTSecurity周报

云起无垠

如何使用PHP开发API接口?

科普小能手

php API php扩展 API接口 API 测试

南京大学 鲲鹏昇腾科教创新孵化中心揭牌,引领高校科研生态新模式

极客天地

《实力见证,卓越前行 ——伊克罗德信息荣获 Amazon Redshift Delivery 认证》

伊克罗德信息科技

大数据 Amazon

InfoQ 与 Jason Van Zyl 探讨 Sonatye、Eclipse基金会和 Maven_Java_Ryan Slobojan_InfoQ精选文章