Ivy缓存未使用编译和发布的模块更新

Ivy缓存未使用编译和发布的模块更新,ivy,Ivy,模块A使用模块B。我编译模块B,这意味着在~/.ivy2/local/[group]/B/[version]/B-[version].jar中有一个新的jar。 ~/.ivy2/cache未更新 我的问题是模块A试图在~/.ivy2/cache中找到B(这是IvyDE指出的) 如何确保在编译项目B后更新缓存 关于您可能需要使用IvyDe的功能: 这将使所有eclipse项目直接可用,而无需构建/发布artfifacts 注意:2.2.0Beta版的屏幕截图列表,但当前版本也有此功能。每当对新版

模块A使用模块B。我编译模块B,这意味着在
~/.ivy2/local/[group]/B/[version]/B-[version].jar中有一个新的jar。
~/.ivy2/cache
未更新

我的问题是模块A试图在
~/.ivy2/cache
中找到B(这是IvyDE指出的)

如何确保在编译项目B后更新缓存

关于

您可能需要使用IvyDe的功能:

这将使所有eclipse项目直接可用,而无需构建/发布artfifacts


注意:2.2.0Beta版的屏幕截图列表,但当前版本也有此功能。

每当对新版本的project B执行常春藤“解析”或“检索”时,缓存都会更新。通常存储库位于另一台机器上,这就是缓存背后的目的。+1@oers这在某种意义上起作用,即ivy.xml依赖项解析错误消失(即,它识别基于工作区的依赖项),但实际上不向依赖项目提供类文件,这意味着没有任何更改-(@virtualeyes你是什么意思?你在eclipse中仍然有编译错误吗?其他项目设置是否正确(src文件夹等).你尝试过一个干净的项目吗?.我必须在子项目中手动引用父依赖项,这不是世界末日,而是一个麻烦。这是一个Scala项目;通过SBT,一切都编译得很好,并且可以启动父-子项目没有问题。看起来SBT的最终收益是Eclipse/IvyDE的损失(因为ivy.xml中的父依赖项不起任何作用,这可能是因为父项目不是jar'd,而是像子项目一样在eclipse中“实时”编译的)这是否有帮助:?它说您应该运行deliver local,以便为项目创建一个ivy.xml,这将由ivyde获取。是的,这正是我一直在做的,ivyde,它非常适合独立项目;但是,当您添加基于工作区的父项目时,ivy无法像预期的那样引入任何依赖项父项目应该是一个存储库(用于jar、bundle等),而不是Eclipse类文件目录。这是我目前的理解(可能是错误的)。无论如何,拥有它将是一件非常好的事情。目前的解决方法是从“/.ivy2”缓存中手动选择父依赖项(子项目编译所需的少量依赖项)