eclipse构建
多年来,在Eclipse上创建通用构建基础结构(CBI)是我们的圣杯之一。 我的主要目标是使Eclipse提交者脱离构建业务,以便将更多的时间和精力集中在实际编写软件上(这是大多数软件开发人员宁愿花时间做的事情)。
当我们谈论“构建”时,是指获取源代码并将其转换为采用者和用户可以下载和使用的形式的过程。 总体上构建软件,尤其是构建Eclipse插件/ OSGi捆绑软件是一个相对困难的问题。 Eclipse上的原始CBI结合了PDE Build ,黑魔法,cron和拉毛形式的手动干预。
我们首次尝试使Eclipse项目更容易实现的目标是Athena Common Build 。 Athena在PDE Build之上添加了一层,这使得构建Eclipse插件,功能和更新站点变得非常容易。 社区对Nick Boldt为实施Athena所做的辛勤工作表示感谢,他的不懈努力帮助项目得以采用。
雅典娜诞生的大约同一时间,我们将哈德森带入了照片,以提供适当的编排。
Eclipse的构建在不断发展。 致力于组装工件的Buckminster项目涉足了构建空间。 创建了B3项目 ,它是基于Modeling技术的第三代构建。 有一次,Eclipse的一个新项目有许多不同的构建选择。
然后开始推向Maven 。 多年来,许多社区的主要成员抱怨说Maven无法用于构建Eclipse包。 这是Eclipse的错。 这是Maven的错。 有很多错误的开始。 但是Tycho改变了一切。 Tycho使Maven了解如何构建Eclipse插件。 Tycho带来了两个有用的功能:首先,它允许您执行“清单优先”构建,其中Maven pom利用Eclipse软件包指定的OSGi依赖性。 其次,它使Maven能够解析p2存储库中的依赖项。 它做的还不止这些,但这些都是重要的。
不幸的是,我们还没有找到追踪迁移率的好方法。 但是据我估计,Eclipse项目和采用者社区中的许多其他项目正在蜂拥而至。
哈德森,Maven和第谷的组合似乎正在传递圣杯。 我在短短几分钟内就成功在Maven / Tycho上启动并运行,此后就再也没有考虑过。 对于具有少量功能和捆绑包的项目,入门和维护构建非常容易。 还有一些相当大的极端情况需要解决。 例如,我们有一个团队致力于将Eclipse项目的构建移至CBI 。 Eclipse项目的构建过程非常艰辛。
CBI已经发展并将继续发展。 我们高贵的网站管理员最近添加了一个新界面,用于使用Eclipse证书对构建工件进行签名 。 我们正在进行中的工作是为Eclipse项目甚至是Maven存储库开发一个标准的“ parent pom ”,在Eclipse项目中,Eclipse项目会将其构建结果推送给公众。
因此,Eclipse的CBI似乎在围绕这些技术保持稳定。 但是,毫无疑问,它会继续发展,尤其是随着越来越多的项目开始考虑实施结合Gerrit和Hudson的持续构建策略。
翻译自: https://www.javacodegeeks.com/2012/05/eclipse-common-build-infrastructure.html
eclipse构建