ivy cleancache但是特定的文件夹



我们在远程存储库中有一些内部jar,并不经常构建它们。解析器看起来是这样的:视图快照是本地回购,集线器发布是共享回购。

    <chain name="hub-internal-library-chain" returnFirst="true">
        <resolver ref="view-snapshots"/>
        <resolver ref="hub-releases"/>
    </chain>

默认情况下,如果开发人员发布任何内容,它将进入查看快照缓存。我们需要保留旗

return first-"true"

性能问题。所以问题是我想删除缓存(本地)和存储库(本地)中的一些特定文件。我是ivy的新手,任何帮助都将不胜感激。

感谢

附言:我已经看过这个和我相似的问题了。但它还没有解决。http://grokbase.com/t/ant/ivy-user/105d2bxpyy/refreshing-ivy-cache-after-changing-a-published-version

Ivy中没有专门的代码,只删除缓存中一个模块的条目。

但是,使用常规Ant任务非常容易。假设您有默认模式的默认缓存,这里有一段build.xml,它将删除com.acme:公司的模块foo的缓存

<delete dir="${user.home}/.ivy2/cache/com.acme/foo" />

这是适用于我的解决方案:

  <target name="clear-entries" if="clean-selected-cache" depends="clear-cache,clear-  repository">
    <echo>Clearing cache and repository entries for internal libraries</echo>
   </target>
<target name="clear-cache">
  <delete verbose="true">
    <fileset dir="${ivy.view-local.cache.root}">
      <includesfile name="path.to.file/clear-cache.includes.txt"/>
    </fileset>
   </delete>
</target>
<target name="clear-repository">
  <delete verbose="true">
    <fileset dir="${ivy.view-local.repository.root}">
      <includesfile name="path.to.file/clear-cache.includes.txt"/>
    </fileset>
  </delete>
</target>

您可以在clear-cache.includes.txt.

中轻松添加要从缓存和存储库中删除的特定文件夹

相关内容

  • 没有找到相关文章

最新更新