【发布时间】:2012-07-26 07:23:42
【问题描述】:
我的组织正在研究在多项目配置中使用 Apache Ivy 进行依赖管理。我们有一个主要项目(称为 MAIN)和一些帮助库项目(称为 LIBPROJ),我们将它们保存在单独的存储库中。我们现在要做的是在库项目发生变化时为它们构建 jar,并将它们提交到主项目,但这很头疼,并导致项目膨胀。
看起来像使用常春藤这样的东西很合适。我们设想使用我们的 Jenkins 服务器自动为 LIBPROJ 构建一个新的库 jar 并将其发布到 ivy,然后使用“latest.integration”版本自动将最新版本的 LIBPROJ 拉入 MAIN。但是,如果我们必须一分为二才能找出问题出现的时间,这怎么能行呢?
我现在能想到的唯一方法是在对 LIBPROJ 进行更改时更改我们在 MAIN 中依赖的 LIBPROJ 的版本,但这并不比检查 jar 本身好多少。
我担心这个的原因是因为在查看旧版本的 MAIN 的情况下,如果我只检查一个,它将无法构建和运行,因为它正在请求最新的构建,即使是我现在正在查看的修订可能几天/几周/几个月不同步。这将破坏任何类型的二分工具(如 git 或 mercurial),这是我真的不想做的事情。
【问题讨论】: