如何告诉ivy4r保持离线状态?

jac*_*bit 2 ivy buildr

我们最近从Ant切换到Buildr来构建我们的项目.我们使用ivy进行依赖管理,使用ivy4r Buildr扩展.我们在办公室有一个本地存储库,用作公共工件的缓存,我们还在其中发布我们自己的工件.

现在出现问题:当我无法访问Office存储库时,我希望能够构建我的项目.Buildr有一个标志告诉它脱机工作(-o),但ivy4r似乎没有考虑到这一点.有没有办法让常春藤不尝试下载文物?我已将它们全部提供在我的机器上的缓存中.

oer*_*ers 8

将缓存超时设置为永久

您可以将缓存属性$ {ivy.cache.ttl.default}设置为永久,这将设置TTL:这样就不会检查存储库是否有新版本.

您可以通过使用以下参数调用ant来实现此目的:

ant -Divy.cache.ttl.default=eternal build
Run Code Online (Sandbox Code Playgroud)

这来自文档:

为已解决的修订缓存定义TTL(生存时间)规则.当Ivy解析动态版本约束(如latest.integration或版本范围)时,它可以存储分辨率的结果(如latest.integration = 1.5.1)给定时间,称为TTL.这意味着除非在刷新模式下运行resolve,否则Ivy将在不访问TTL持续时间的情况下重用此动态修订解析结果.

...

TTL持续时间也可以设置为"永久",在这种情况下,一旦解决,修订始终使用,除非在刷新模式下解析.

其他参考:

将UseCacheOnly设置为解析任务

解决任务具有属性useCacheOnly,它可以用来

强制[s]解析器只使用它们的缓存而不是它们的实际内容

例:

<ivy:resolve file="path/to/ivy.xml" useCacheOnly="true/>
Run Code Online (Sandbox Code Playgroud)