【发布时间】:2011-03-12 03:22:15
【问题描述】:
Joel Test 的第 2 项是“您可以一步构建构建”,但实现此目标的最佳(或普遍接受的)方法是什么?与维护完全独立于 IDE 的构建脚本(例如,在 Java 项目的情况下使用 Ant 或 Maven)相比,使用 IDE 的命令行界面执行headless build 的优缺点是什么。
我问这个问题是因为我正在试验 Maven,并且有点惊讶地发现,即使使用 m2eclipse 插件,关闭 Eclipse 的 Java Builder 并将整个构建过程委托给 Maven 也是不可行的。项目。看来如果我想将项目迁移到 Maven,我最终将不得不维护两个等效但不同的构建过程,例如命令行构建将使用 DataNucleus Maven 插件来增强 JDO 类,而 IDE 构建将使用 Eclipse 的 DataNuclues 插件;命令行构建将使用 Tomcat Maven 插件,而 IDE 将使用 Eclipse 的 Web 工具平台。这种冗余似乎很不幸。
我了解到 NetBeans 使用 Ant 进行构建,听起来它可以解决这个问题。但不幸的是,我既没有使用 NetBeans 也没有使用 Ant!
编辑添加:我发现我可以在 Eclipse 中设置一个 Maven 构建器,它具有调用我正在使用的一些 Maven 插件的特定目标(例如,在我的例子中,目标是“datanucleus :enhance process-resources" 负责 JDO 增强、资源复制和 native2ascii 转换)。这将 java 编译留给 Eclipse,但仍实现了与 Maven 的某种程度的集成。
【问题讨论】:
-
通过非常仔细地定义“步骤”...
标签: eclipse maven-2 command-line build