写点什么

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

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

关注

评论

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

数字经济下,银行线上场景化建设的服务颗粒度、用户忠诚度和生态融合度

CECBC

Hoo虎符研究院|Moonbeam主网上线后 “Layer 0”会有哪些改变?

区块链前沿News

Hoo 虎符交易所 虎符研究院 波卡 Moonbeam

使用污点分析检查log4j问题

华为云开发者联盟

Java log4j JNDI 污点分析 信息流分析

从冬奥火炬“飞扬”看我国氢能产业的发展前景

易观分析

2022年2月国产数据库排行榜: OceanBase“三连增”重夺探花,GaussDB实现本月最大涨幅引期待

墨天轮

数据库 opengauss TiDB oceanbase 国产数据库

加密世界的自由

CECBC

Linux之watch命令

入门小站

Linux

最佳实践 | 如何避免一行错误代码造成的血案?

龙智—DevSecOps解决方案

代码质量 静态代码分析 电信公司解决方案 代码检查器

打造爆款游戏互动体验,拍乐云Unity实时语音了解一下

拍乐云Pano

游戏开发 Unity RTC 实时语音

新版本插件解读|如何借助 Forward Auth 增强认证能力

API7.ai 技术团队

开源 网关 认证 Apache APISIX

java培训:MyBatis 相关面试题分享

@零度

mybatis JAVA开发

智汇华云 | 通过iscsi为容器提供存储

华云数据

花灯照 人笑颜|OceanBase祝大家工作生活都和元宵一样甜

OceanBase 数据库

数据库 分布式 开发者 OceanBase 开源 元宵

智汇华云|ArStack 热迁移背后的黑魔法

华云数据

拥有CI/CD的所有益处,却更绿色

龙智—DevSecOps解决方案

静态代码分析 静态代码分析工具 SAST工具 静态分析安全测试工具

转载:公司到底怕不怕劳动仲裁?

小江

法律 仲裁

美团动态线程池实践思路,开源了

yanhom

Java 线程池 动态调整线程池参数 动态线程池 美团线程池

AI冬奥 | 未来已来?走进元宇宙入口-虚拟数字人

Baihai IDP

人工智能 机器学习 AI 游戏 元宇宙

[Python公开课]零基础玩转Python基础篇----第六节:Python中的函数

是Dream呀

2月月更

敏捷环境中的DevSecOps

龙智—DevSecOps解决方案

敏捷 DevSecOps 敏捷环境 DevSecOps和敏捷

如何优雅的处理错误逻辑

蜜糖的代码注释

Java 2月月更 写好代码

[Python公开课]零基础玩转Python基础篇----第三节:Python的常用语句

是Dream呀

Python 2月月更

大数据培训:在 flink 中使用 hive udf的原因分析

@零度

flink 大数据开发

[Python公开课]零基础玩转Python基础篇----第四节:Python的字符串

是Dream呀

Python 2月月更

[Python公开课]零基础玩转Python基础篇----第五节:Python的列表、元组和字典

是Dream呀

Python 2月月更

[Python公开课]零基础玩转Python基础篇----第二节:Python的语法基础

是Dream呀

2月月更

SaaS服务的私有化部署,这样做最高效|云效工程师指北

阿里云云效

阿里云 DevOps 云原生 私有化部署 SaaS平台

Linux下玩转nginx系列(二)——nginx配置文件说明

anyRTC开发者

nginx Linux 音视频 WebRTC 服务器

【C语言】数据类型

謓泽

c 数据类型 2月月更

龙蜥社区一周动态 | 2.07-2.13

OpenAnolis小助手

Linux 开源 社群运营

web前端培训: JavaScript 中初始值如何填充数组

@零度

JavaScript 前端开发

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