为什么 Jenkins API 有 jenkins 和 hudson 的包?
Why does the Jenkins API have packages for jenkins and hudson?
我正在尝试使用 Jenkins 编写 Groovy 脚本,但似乎没有关于此的文档,并且 API 有点像包 hudson
和 jenkins
。我知道 Hudson 是 Jenkins 的旧名,我的第一个猜测是开发人员没有重命名旧包,而是为新代码使用了新名称——有效地造成了混乱。这是真的还是我遗漏了什么?
你说的有点对。 Jenkins 起源于 Hudson ,所以保留了旧包和 类 因为两个明显的原因:
- 为了支持世界各地的旧遗产 类 和代码 written/used。否则,每个开发人员都很难更改或使用@deprecated @SuppressWarnings
之类的东西
- Jenkins change/restructure 所有 类 需要更多时间。即使是巨大的 Java 社区也避免这样的事情,他们只在最需要的时候重组代码。就像他们在泛型实现期间在 Dictionary 或 Vector 类 甚至 Collections 框架中所做的那样。
您也可以参考此页面以获得更多答案:How to choose between Hudson and Jenkins?
我正在尝试使用 Jenkins 编写 Groovy 脚本,但似乎没有关于此的文档,并且 API 有点像包 hudson
和 jenkins
。我知道 Hudson 是 Jenkins 的旧名,我的第一个猜测是开发人员没有重命名旧包,而是为新代码使用了新名称——有效地造成了混乱。这是真的还是我遗漏了什么?
你说的有点对。 Jenkins 起源于 Hudson ,所以保留了旧包和 类 因为两个明显的原因:
- 为了支持世界各地的旧遗产 类 和代码 written/used。否则,每个开发人员都很难更改或使用@deprecated @SuppressWarnings 之类的东西
- Jenkins change/restructure 所有 类 需要更多时间。即使是巨大的 Java 社区也避免这样的事情,他们只在最需要的时候重组代码。就像他们在泛型实现期间在 Dictionary 或 Vector 类 甚至 Collections 框架中所做的那样。
您也可以参考此页面以获得更多答案:How to choose between Hudson and Jenkins?