在不同的分支上使用IvyDE和不同的工作区

时间:2010-05-03 09:33:57

标签: java eclipse caching branch ivy

当我为不同的分支机构使用不同的工作空间时,我遇到了使用IvyDE的问题。我打开了“在工作区中解决依赖关系”。但每次我换到不同的工作区时,我都要记得手动清理缓存。这是因为IvyDE总是使用默认缓存来解析工作空间中的依赖关系,因此当在工作空间之间切换时,缓存可能会受到不同版本的污染。

似乎不可能同时使用两个不同的工作区。

我找不到配置IvyDE用于缓存项目依赖项的位置的方法。它似乎不使用ivysettings.xml中定义的缓存

1 个答案:

答案 0 :(得分:2)

我现在有一个配置,即最新版本的IvyDE正确使用。

在我的ivysettings.xml中,我添加了一行

<properties file="./revision.properties" />

这将设置我们的无头构建脚本使用的属性 revision.version

然后我设置了以下属性

<property name="ivy.build.cache" value="${ivy.default.ivy.user.dir}/cache/${revision.version}" override="false" />

然后使用以下配置块

设置ivyDE使用的默认缓存
<caches defaultCacheDir="${ivy.build.cache}">
    <cache name="cache" basedir="${ivy.build.cache}" />
</caches>

然后,任何解析器都需要明确设置此缓存,如下所示:

<filesystem name="build" cache="cache" latest="latest-revision">

如果您在同一分支上有多个工作区,则无效。但它确实意味着你可以同时在不同的分支上工作而没有问题。