写点什么

Eclipse Foundation 首次发布 Hudson

  • 2013-03-03
  • 本文字数:1466 字

    阅读完需:约 5 分钟

几周之前,Eclipse Foundation发布了著名的持续集成系统 Hudson 3.0 。Hudson 项目的根源可以追溯到两年前,当时从 Hudson分支出了Jenkins 并且它本身被提议作为一个中立的托管组织加入Eclipse Foundation 。尽管在那之后,两个分支都继续发展至今,并且在分支之后还发布了Hudson 2.2.1,但此次的Hudson 3.0 才是真正意义上的首次发布。

Hudson 提供了两种获取方式:一个简单的 web 压缩包(仅包含核心特性)和一个打包的版本(包含若干有用的插件)。可以从 Maven Central 上获取,也可以从 Eclipse Foundation 网站上下载。

孵化项目所必须的清理工作是导致这次发布花费时间太长的原因之一。在 2011 年 5 月, InfoQ 提到

Eclipse Foundation 对孵化项目的清理投入了极大的精力,因此项目提议的创建仅仅是万里长征的第一步。除此之外,将现有代码库以 Eclipse 公开许可的方式进行重新许可,对于由 Eclipse 公司成员(Sonatype,Oracle)贡献的代码来说或许是可行的,但对于来自外部的核心功能扩展,则需要更仔细的审查才能允许这部分代码加入。

InfoQ 采访了 Hudson 项目的领导人 Winston Prakash,我们首先询问了为什么孵化项目的清理工作如此重要:

Prakash:在 Hudson 成为 Eclipse Foundation 的顶级技术项目之后,它必须遵守 Eclipse 孵化项目的政策,这有助于降低孵化项目的风险,并且更能吸引其它企业在自己的产品中引入 Hudson。这也支持了 Hudson 一个主要目标,即将其打造为企业级的产品。

InfoQ:要达到政策标准,需要对核心架构做多大程度的改变呢?

Prakash:Eclipse Foundation 法律团队已经看过该产品代码库中的每一行代码(有工具可以实现逐字的代码分析),以确保它遵循以上所有的政策。Hudson 包含的所有第三方类库也经过了法律流程的检验。我们花了一年多时间才达到了政策要求。

InfoQ:3.0 版本的发布是否标志着 Hudson 的一个全新开端,在插件兼容性方面它和 Jenkins 今后又会怎样?

Prakash:我们尽了最大的努力来维护两者的兼容性,在不改变任何现有 API 的前提下提供功能增强。我们将来会继续支持 Jenkins 的插件,并且在我们的发布中进行检验

我们也将继续鼓励 Hudson 用户为其开发新插件。

InfoQ:Hudson 禁用了构建时自动 JDK 安装,这样做的重要性体现在哪里?

Prakash:这里有个许可方面的问题。根据 Oracle 法律团队的说法,JDK 必须在接受许可条款的前提下才能安装。我们收到报告称,Hudson 和 Jenkins 原先通过屏幕抓取的方式安装 JDK 是非法的。因此我们迅速禁用了 JDK 自动安装功能,直到 JDK 团队能够提供适当的 REST API 为止。

InfoQ:Groovy 插件从框架的关键依赖中移除了,这是什么原因?还能继续使用它吗?

Prakash:从 Hudson 核心中移除 Groovy 的主要原因是归属方面的问题,Eclipse Foundation 不能从 Groovy 团队获得合法的归属权。

通过外部插件依然能够支持 Groovy。这样做的好处在于对脚本的支持进行了抽象,因此将来也许能够用 Scala、Jython、JRuby 等其它 JVM 语言编写脚本。

InfoQ:如何找到 Hudson 3.0 插件,它的站点现在在哪里?

Prakash:特定于 Hudson 的插件,以及来自其它分支且兼容 Hudson 的插件在这里:

InfoQ:Hudson 3.x 的未来会怎样?

Prakash:对 Eclipse Foundation 来说最重要的是其稳定性,我们已准备在下个发布(3.1.0)中专注于性能改善。虽然我们也会继续按需添加新特性,不过稳定性和性能才是优先级最高的事务。

查看英文原文: First Hudson Release from Eclipse

2013-03-03 00:362449
用户头像

发布了 428 篇内容, 共 200.6 次阅读, 收获喜欢 39 次。

关注

评论

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

java拼团小程序源码(毕设)

清风

毕业设计

MySQL五个常见的高可用方案

hanaper

linux之chattr命令

入门小站

Linux

数字化助力能源高效利用

CECBC

用诸葛孔明的智慧,读懂新型数据中心的“四新”机遇与产业逻辑

脑极体

如何从数据到资产

奔向架构师

数据治理 9月日更

【SoCC2018论文】DAGOR:微信「大规模微服务过载控制系统」

OpenIM

低代码时代来临,织信Informat携手低码星球探讨「企业数字化转型之路」

优秀

低代码

kube-ovn 组网结构

Geek_f24c45

k8s Kube-OVN cni

【得物技术】浅谈重复http请求的取消

得物技术

方法 HTTP 场景 crud 请求

分分合合分分,谷歌医疗走向大败退

脑极体

ebay支付账务系统架构解析之“读”一无二

贾奇 (Jacky)

支付系统 CQRS 读写分离

上线半天下载量破100W!美团大佬的Java性能调优实战手册,超详细

Java 编程 面试 性能调优

GraphQL 快速入门【1】简介

码界行者

Rest graphql

【网络安全】Spring框架漏洞总结(一)

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

HTML进阶(二)

Augus

html 9月日更

如何给技术部员工做考核?

石云升

团队管理 管理 引航计划 内容合集 9月日更

区块链技术解决信任问题

CECBC

从零到MySQL架构师学习内容整理

hanaper

Python——内置函数----让你偷懒的工具

在即

9月日更

编程基础:CPU资源监控

正向成长

CPU调度

北鲲云超算平台凝聚技术实力,赋能高算力需求行业加速发展

北鲲云

测试九剑之-破箭式

薛飞

自动化测试 测试管理

自定义aop实现Cacheable注解(零拷贝), CacheItemGet,CacheMapGet,CacheMapPut

张音乐

Java 缓存 注解 9月日更

网卡修改网速和buffer

耳东@Erdong

9月日更 网卡

面对面小程序开源

OpenIM

spine动画文件转dragonbones骨骼文件

风翱

9月日更 dragonbones

Python Qt GUI设计:UI界面可视化组件、属性概述(基础篇—4)

不脱发的程序猿

Python qt GUI设计 PyQt5

流媒体:依托于声网的连麦解决方案

RTE开发者社区

音视频 流媒体

坍缩的企业

涛哥 数字产品和业务架构

企业架构

大厂敲门砖!P9技术官级别的顶级并发编程宝典,献给想去大厂的你

Java 编程 面试 程序人生 p9

Eclipse Foundation首次发布Hudson_语言 & 开发_Alex Blewitt_InfoQ精选文章