我们希望使用Hudson / Jenkins构建我们的项目,该项目目前完全在Eclipse中实现。从我所知道的,有各种方法可以从A到B或E到H,例如:导出为Ant脚本,导出为Maven脚本,导出为Runnable JAR,同时为其创建Ant脚本等。
以上所有似乎都有一个共同点,就是“在Eclipse中运行”和“Hudson生成运行的东西”之间存在多个独立的步骤,例如,您可以更改项目,提交SVN并触发一个Hudson构建,但除非你特别记得在其间“导出为Ant脚本”,否则它将失败。
是否存在“一个一体”的解决方案?我并不担心点击量,而是关注两者之间的各种步骤,更糟糕的是,有时只需要点击。简而言之:我正在寻找的东西来自“我可以单击'运行'按钮,它可以”到“哈德森产生的东西”,而不是每个开发人员都必须记住中间的每个可选步骤。
想法?
编辑:到目前为止,所有答案似乎都遇到了同样的问题:它是所有并行开发的。你有Eclipse Run Configuration,你有Maven / Ant / Whatever build。如果你改变你的运行配置,你必须记得以后更改你的Maven / Ant / Whatever build,提交它,然后HOPE,所有其他开发人员都注意到他们在每日SVN更新期间对Maven / Ant / Whatever构建的更改,手动打开文件,检查更改,然后在自己的运行配置中复制这些更改。这似乎只是在乞求错误和错误,是不是有任何与Eclipse运行配置正确集成的东西?
答案 0 :(得分:3)
Hudson可以构建Maven或Ant项目,因此第一步是使用任一工具获得可重现的构建,您只需要设置一次。然后,您需要获取该pom.xml或build.xml文件,并将其实际提交给Subversion。这是必要的,因为Hudson不会打开Eclipse,而是使用命令行来执行构建。
然后你可以设置一个新的Hudson作业,它将观察Subversion的任何变化。您的开发人员可以使用他们的正常工作流,他们使用Eclipse进行构建,并在源代码控制准备就绪时提交更改。 Hudson会看到它并下载一个新的代码库副本,然后自己编译并报告任何问题。
我个人更喜欢Maven2,因为我知道Hudson与它有很好的集成,并且会运行你的JUnit测试。 Eclipse曾经对Maven感到痛苦,但现在有m2eclipse plugin。
答案 1 :(得分:0)
我会尝试http://www.ant4eclipse.org/。
它允许您从ant文件构建eclipse项目。从这里的第一段:http://www.ant4eclipse.org/node/6听起来非常像你想要的。使用ant4eclipse,ant将访问你的eclipse项目,然后它应该能够通过Hudson构建。
ant4eclipse项目的目的是避免(或至少:减少)Eclipse和Ant配置的冗余。更精确:它包含能够读取和使用Eclipse的一些配置文件的Ant任务。
答案 2 :(得分:0)
迁移到Maven,Hudson与Maven有着很好的一流整合。
Maven 3 + Archiva构建了一个非常强大的构建系统。当然还有其他存储库管理器,但Archiva足以满足我的需求。
一旦你获得 Maven,你真的很想知道如果没有它,你会怎么做。专用的私有存储库管理器可以极大地帮助这一点,这就是Archiva对于这一点非常重要的原因。