- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个本地 Artifactory 存储库,其中有两个用于 commons-logging
的 jar 。 : 一个给 version 1.0.4
一个用于 version 1.1.1
.我正在尝试使用 Ivy 下载带有 ant 任务的旧版本(在 ivy.xml 中使用适当的依赖项标记),然后我将此依赖项标记的“rev”属性更改为 1.1.1。
在 ant 中使用 ivy:resolve 时,这个较新的 jar 成功下载到我的缓存中,但旧的 jar 不会自动删除,我想让这发生。
查看 Ivy 文档后,我不知道该怎么做;有谁知道如何让 Ivy 在下载较新的工件时删除旧版本的工件,无论是使用解析任务还是其他方式?
最佳答案
在缓存中放置“较旧”的 jar 确实没有问题。如果您的项目不需要旧的 jar,Ivy 会直接忽略它。旧 jar 在您的系统中占用大约 50 KB。在太字节驱动器的时代,释放空间不值得花费时间和精力。
Ivy 缓存就是这样:一个缓存。为所有 您使用 Ivy 的项目。如果一个较旧的项目需要 1.0.4 版本的 commons-logging jar,它已经在 Ivy 缓存中,不必下载,因此,就像一个好的缓存一样,它可以节省您的时间和精力。
你可以做一个 <ivy:cleancache>
但这确实会擦洗您的整个缓存:所有内容都将被删除。它将删除较旧的 1.0.4 版本的 jar,但它也会删除 1.1.1 版本的 jar。当然,Ivy 只会在下次请求时下载它,但这意味着等待 Ivy 下载您所有的 jars。
顺便说一句,这是<ivy:cleancache>
的一个大问题。 :如果您使用 Ivy 进行多次构建,并且其中一个会清理您的缓存,那么您最终会破坏其他构建。通常,这对个人用户来说不是问题,但对于持续集成系统来说可能是问题。
如果您查看 Ivy 文档,确实会说 <ivy:cleancache>
是相同的:
<delete dir="${ivy.cache.dir}" />
<delete dir="${ivy.cache.dir}">
<date datetime="01/01/2010 12:00 AM" when="before"/>
<include name="*.jar"/>
</delete>
关于Ivy 从 Ivy 缓存中删除不需要的(旧的)工件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3710923/
我有一个主 Ivy 项目,其他人通过 svn:externals 属性将其包含在他们的项目中。该项目包含 Ivy jar,连接到我们项目的默认 ivysettings.xml 文件,以及一些允许我标准
我正在尝试将文件库添加到 Ivy ,但它不起作用。 以下是使用的文件: Ivy .xml ivysettings.xml 构建文件
我以为我不需要问这个,但我没有任何进展。 这个问题的解决方案: How are maven scopes mapped to ivy configurations by ivy实际上解决了问题,但在其
考虑如下 ivy.xml: 当我运行 Ivy 时,它会获取 EHCache 的所有依赖项
我来自 Maven 背景。我正在从事的项目不是基于 Java 的。但是,需要使用独立的 Ivy 进行依赖管理。存储库管理器是 Nexus。 该项目产生了几个 zip 工件,需要通过独立的 Ivy 将它
似乎没有 ivy:unpublish 任务(例如,参见 here)。 所以,我认为应该在文件系统级别手动或通过删除 ~/.ivy2/local 子文件夹的 Ant 任务执行取消发布? (当目标是从本地
有没有人有使用 Ivy 的具体例子或 与 delivertarget 的任务属性做递归交付?官方文档相当......稀疏。是否有关于何时使用它而不是正常的 Ant“父”构建机制(例如, )来进行递归
我正在使用 ivy,我工作的公司有一些有趣的小 ivy 和 ant 教程。 当在依赖项部分使用时,每个教程都有助于完全绕过箭头在 ivy 构建 xml 文件中的作用。 因此,鉴于此设置:
有关 Apache Ivy 的三个简单问题: (1) 在我们的项目中,我们使用了 100 多个“通用”JAR(log4j、junit、commons-cli 等)。我们是否必须为所有这些文件编写 iv
我正在使用 ivy,我工作的公司有一些有趣的小 ivy 和 ant 教程。 当在依赖项部分使用时,每个教程都有助于完全绕过箭头在 ivy 构建 xml 文件中的作用。 因此,鉴于此设置:
是否有人测试过如何在启用安全性的 Archiva 中部署工件。我有以下配置 我的ivysettings.xml 我的build.xml
解析了我的 ivy.xml 文件后,我想创建一个新的 resolved-ivy.xml 文件,其中包含所有传递依赖项 在解析中找到。 这有可能吗? 这与交付不同,交付(我相信)只从您的 ivy.xml
我有一个本地 Artifactory 存储库,其中有两个用于 commons-logging 的 jar 。 : 一个给 version 1.0.4一个用于 version 1.1.1 .我正在尝试使
我正在使用 ~/.sbt/repositories文件告诉 sbt 0.13.5 要从哪些存储库中检索。该文件仅包含 local和 file://具有与标准 sbt 非常相似的自定义布局的存储库,具有
在 Gradle 中,我们配置了一个本地 Maven 存储库,并将工件上传到那里以用于我在其他项目的本地构建中使用。 我更喜欢使用 Ivy 存储库(因此我可以为工件名称使用自定义模式)。 您如何配置
更新快照依赖项时,我无法让 Ivy 更新缓存。解析器(具有以下设置: 一个示例 Artifactory 文件名(在 Artifactory 中)是: my-jar-1.999-SNAPSHOT.ja
我在设置 sbt 时遇到了问题。我下载了一个“zip”并展开它,但是当我运行 sbt 命令时,发生了错误。 module not found: org.scala-sbt#sbt;0.13.8
Maven 存储库,例如 Maven Repository提供最广泛的依赖管理项目。 Ivy 提供了访问 maven 存储库并从那里下载 Artifact 的可能性。这些存储库中只有 pom 文件,没
有没有办法在我调用 ivy:retrieve 时选择使用哪个 ivy.xml 文件? 寻找 at the documentation看来我可以使用 settingsRef 属性来选择要使用的 IVY
这是我的 ivy.xml 的示例: 使用 ivy 1.0,我可以下载这两个工件 当我将版本升级到 ivy-2.0.0 时,仅下载其中一个工件。 Ivy 设置中是否有我必须指定的内容
我是一名优秀的程序员,十分优秀!