【发布时间】:2012-06-11 18:25:50
【问题描述】:
我有一个大型应用程序,其中包含许多 eclipse(实际上使用 Spring Source Toolsuite)项目,每个项目都有常春藤管理的依赖项。我们目前有它的设置和工作,你可以有项目 A(一个生成战争的动态 Web 项目)和项目 B(生成一个 jar)设置,这样项目 A 依赖于项目 B,如果你的工作区中只有项目 A ,它将从常春藤存储库中提取项目B生成的jar文件。我们设置部署程序集以获取从 ivy 解析生成的 eclipse 库并将其放在 WEB-INF/lib 目录中,以便我们可以轻松地部署到 tomcat。
通过手动过程,所有这些都可以正常工作。我可以对项目 B 进行更改,将其发布到我的本地 ivy 存储库,并重新解决对项目 A 的依赖关系,我得到新的项目 B jar 文件,并且一切都按预期在 tomcat 上编译和更新。
当我将项目 A 的常春藤解析设置更改为“解决工作区中的依赖项”时,我遇到了问题。当我在项目 B 中进行更改时,项目 A 成功注意到更改并正确编译,但部署程序集中断。当我查看tomcat时,它有一个项目A的上下文根文件夹,但它是空的。如果我取消选中“解决工作区中的依赖项”复选框,上下文根文件夹将被填充,并且一切都恢复到工作状态。
我可以继续执行手动过程,但是如果我可以让 ivy 先使用我的工作区,然后如果我的工作区中不存在该项目,则从存储库中获取 jar 会节省大量时间。任何建议将不胜感激!
【问题讨论】: