写点什么

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:501402
用户头像

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

关注

评论

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

微博评论架构

Johnny

「架构实战营」

易观分析:2022年Q3中国网络零售B2C市场交易规模达21971.5亿元

易观分析

零售 交易

收藏|多指标时序预测方式及时序特征工程总结

云智慧AIOps社区

人工智能 机器学习 深度学习 时间序列 时间序列预测

看完这篇线程、线程锁与线程池讲解,面试随便问!

小小怪下士

Java 程序员 面试 线程 线程池

单实例并发超1个亿!阿里云飞天洛神云网络NLB网络型负载均衡性能重大突破

云布道师

负载均衡 阿里云 云网络

大厂前端面试考什么?

loveX001

JavaScript

Python进阶(四十五)走进requests库

No Silver Bullet

Python requests 11月月更

房产|1-10月全国房地产开发投资数据解读

前嗅大数据

js事件循环与macro&micro任务队列-前端面试进阶

loveX001

JavaScript

主成分分析PCA与奇异值分解SVD-高维数据可视化以及参数n_components

烧灯续昼2002

机器学习 算法 降维 sklearn 11月月更

Base64码常见操作(url链接文件转base64编码、本地文件转base64编码等)

共饮一杯无

Java base64 11月月更

旺链科技创始人刘涛荣登“中国区块链60人”榜单

旺链科技

区块链 数字经济 产业区块链 企业号十月PK榜

Awesome MegEngineer 英雄招募帖,开源社区专属权益等你来领

MegEngineBot

深度学习 开源 MegEngine 开发者福利

Ernie-SimCSE对比学习在内容反作弊上应用

百度Geek说

人工智能 AI技术 企业号十月 PK 榜

[力扣] 剑指 Offer 第二天 - 复杂链表的复制

陈明勇

Go 链表 数据结构与算法 11月月更

Python进阶(四十六)Python3实现SMTP发送邮件详细教程

No Silver Bullet

发送邮件 SMTP pyhton 11月月更

CSS学习笔记(八)

lxmoe

CSS 前端 学习笔记 11月月更

2022 Rebase Hackathon启动

谢锐 | Frozen

区块链 defi 黑客松 web3 layer2

JAVA逻辑运算符

默默的成长

前端 java; 11月月更

7.PGL图学习之图游走类metapath2vec模型[系列五]

汀丶人工智能

图神经网络 GNN GCN 11月月更

房产|2022年10月房价数据出炉!房价上涨的城市仅有…

前嗅大数据

python数据分析-pandas基础(1)

AIWeker

Python 数据分析 pandas 11月月更

Python进阶(四十七)python3使用pyinstaller实现将py文件打包成exe文件

No Silver Bullet

Python pyinstaller 11月月更

聚焦亮点,西安人工智能治理委员会成立暨产业政策白皮书正式发布

极客天地

DevOps 必备的 Kubernetes 安全清单

SEAL安全

Kubernetes DevOps 安全

「Go易错集锦」意外的变量隐藏

Go学堂

golang 程序员 个人成长 常见错误 隐藏变量

CSS学习笔记(九)

lxmoe

CSS 前端 学习笔记 11月月更

从零到一落地接口自动化测试

老张

自动化测试

静悄悄“双十一”背后的“喧嚣”

易观分析

双十一 消费 购物

常见用的设计模式以及实战

想要飞的猪

设计模式 spring设计模式

JS模块化—CJS&AMD&CMD&ES6-前端面试知识点查漏补缺

loveX001

JavaScript

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