问题标签 [ivy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1456 浏览

java - 您如何配置 Apache Ivy 以删除孤立工件?

假设我有一个ivy.xml包含以下内容:

然后我想升级到 Checkstyle 4.4,所以我将我的更改ivy.xml为包含:

retrieve第一次配置之后,我有了文件checkstyle-4.3.jar. 第二次配置后,我也有了文件checkstyle-4.4.jar,文件checkstyle-4.3.jar依然存在。

有没有办法让 Ivy 意识到旧文件是一个孤立文件,并将其从lib目录中删除?我的想法是,我不希望我的开发人员的磁盘空间使用量在我每次升级工具时都急剧增加。

理想情况下,我也希望它从本地存储库中删除。我确实意识到本地存储库的目的是在项目之间共享它,因此删除任何东西是没有意义的,因为它不知道该工件是否仍在其他项目中使用。但必须有某种修剪程序......

0 投票
1 回答
5195 浏览

java - 将常春藤依赖项指向本地文件?

我有一个主项目,其中模块 A 依赖于为模块 B 构建创建的 .jar 文件。在开发过程中,我定期修改 B,然后构建 B 以创建库,然后构建 A 到使用这些更改。

有没有办法将模块 A 的常春藤文件指向我的模块 B 构建创建的 jar 文件?鉴于我多次迭代,我不想一遍又一遍地将模块 B 的 jar 放入 ivy 中。在构建每个模块 B 之后,必须将 jar 复制到模块 A 的构建目录结构中也很烦人。

实际上,对我来说情况更糟,因为我在某个依赖树(A->B->CD)中有大约 4 个模块。如果只是 A 和 B,我可能会忍受它,但我厌倦了在子模块构建后复制 jar 文件,并认为是否有办法覆盖 ivy 文件依赖行以在本地查看然后会让生活变得简单很多。

0 投票
2 回答
1161 浏览

ant - Apache Ivy:解决嵌入在安装程序中的依赖项

我有一个构建问题,我必须通过 Apache Ivy 解决非标准工件。

问题:

  • 我依赖于两个工件(a.jar 和 a-lib.jar)。
  • 这两个依赖项仅作为单个安装程序 (a_installer.jar) 的一部分。
  • 安装程序可以下载,嵌入的工件本身不能。
  • 可以操纵安装程序来解压缩所需的依赖项。

要求:

  • 我必须在构建期间解析/下载工件(我无法将安装程序或提取的工件与我的代码一起保留)。
  • 我不能使用存储库来存储提取的工件。
  • 子类化/扩展常春藤/任何都很好。

有没有人解决过类似的问题,或者分享一些有用的信息?

或者,也许我以错误的方式处理问题?从我目前在网上发现的情况来看,人们似乎只是使用 Ivy 来下载文件并在事后手动(使用 Ant/whatever)对它们进行后处理,而实际上并没有解决Ivy 中更复杂的依赖关系。

谢谢

PS:我不在乎安装程序是否也放入了常春藤下载缓存,但我只想下载一次安装程序(而不是两个依赖项)。

0 投票
2 回答
299 浏览

ant - 在 Ant 脚本中处理 file:// 协议

一些 Ant 目标需要将 URL 定义为属性(如ivy pattern),并且由于file://Windows(file:/file:///)和 Unix(file://)上的协议不同,因此整个脚本的可移植性较差。

有没有一种很好的方法来处理file协议而不会弄乱属性和 Ant 条件?

0 投票
2 回答
1890 浏览

jboss - 如何将 JBossAS 5 与 Apache Ivy 一起使用?

我对 Apache Ivy 比较陌生,正在尝试将现有的开发项目转移到使用 Ivy 进行依赖管理。我必须配置的最后一个依赖项是 jboss-javaee.jar。我在任何地方都找不到它,并且在运行时收到以下错误消息

[ivy:retrieve] :: 问题总结 ::
[ivy:retrieve] :::: 警告
[ivy:retrieve] 未找到模块:org.jboss#jboss-javaee;5.0.1.GA
[ivy:retrieve] == == 本地:尝试
[ivy:retrieve] C:\Documents and Settings\eweibust.ivy2/local/org.jboss/jboss-javaee/5.0.1.GA/ivys/ivy.xml
[ivy:retrieve] -- 工件org.jboss#jboss-javaee;5.0.1.GA!jboss-javaee.jar:
[ivy:retrieve] C:\Documents and Settings\eweibust.ivy2/local/org.jboss/jboss-javaee/5.0.1。 GA/jars/jboss-javaee.jar
[ivy:retrieve] ==== shared: 试过
[ivy:retrieve] C:\Documents and Settings\eweibust.ivy2/shared/org.jboss/jboss-javaee/5.0.1 .GA/ivys/ivy.xml
[ivy:retrieve] -- 工件 org.jboss#jboss-javaee;5.0.1.GA!jboss-javaee.jar:
[ivy:retrieve] C:\Documents and Settings\eweibust.ivy2/shared/org.jboss/jboss-javaee/5.0.1.GA/jars/jboss-javaee.jar
[ivy:retrieve] ==== public:试过
[ivy:retrieve] http://repo1.maven.org/maven2/org/jboss/jboss-javaee/5.0.1.GA/jboss-javaee-5.0.1.GA.pom
[ivy:retrieve] --工件 org.jboss#jboss-javaee;5.0.1.GA!jboss-javaee.jar:
[ivy:retrieve] http://repo1.maven.org/maven2/org/jboss/jboss-javaee/5.0.1。 GA/jboss-javaee-5.0.1.GA.jar
[ivy:retrieve] :::::::::::::::::::::::::::::::: ::::::::::::::
[ivy:retrieve] :: 未解决的依赖关系 ::
[ivy:retrieve] :::::::::::::::::::: ::::::::::::::::::::::::::
[ivy:retrieve] :: org.jboss#jboss-javaee;5.0.1.GA: 未找到
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::: :

0 投票
1 回答
174 浏览

java - 使用 Ivy 管理特定于操作系统的库

假设有一个特定于操作系统的库 ( .so/.dll ) 附加到 Java 项目,那么使用 Ivy 处理这个问题的方法是什么?

0 投票
5 回答
9812 浏览

proxy - 常春藤通过 Nexus 代理

有谁知道我如何在 Ivy 中指定 Maven 中的 mirror/mirrorOf 之类的东西?我正在使用本地 Maven 代理 (Nexus),需要该工具来指定 Nexus 代理应该访问哪些父存储库。

在 Maven 中,我做的很简单:

但我在常春藤中找不到这种选择。

0 投票
1 回答
9484 浏览

java - 如何获得常春藤的依赖

我正在审查在我们的应用程序中使用 Ivy 的过程。我已经设置了一个简单的配置来下拉 cobertura。

我知道 cobertura 依赖于其他 jar 文件。那么如何获取其他 jar 文件呢?我在缓存目录中看到的唯一内容是 cobertura jar 文件。

这是我的 ivysetting.xml

是否有其他可用于获取依赖项/jar 的存储库列表?


build.xml 文件中的片段:

0 投票
3 回答
6772 浏览

java - 如何附加使用 ivy 下载的库的源代码

我使用 ivy 和 ivy eclipse 插件来下载依赖项。效果很好。但是我怎样才能附加这些库的源代码,以便进入这些库呢?

0 投票
2 回答
580 浏览

java - 分享常春藤配置

我正在维护由常春藤配置支持的多个项目。许多配置重叠,例如:

  • 常见的构建配置(pmd、findbugs);
  • 依赖组(弹簧);

有没有办法通过引用共享配置来导入这些依赖项?


注意:据我所知,请不要建议使用 Maven,但对于这些特定项目,它(还)不是一个选项。