Apache Ivy 如何解析 ivysettings.xml 文件中提供的工件模式中的变量?

2024-04-17

如果我的 ivysettings.xml 文件包含:

<url name="com.springsource.repository.bundles.external">
    <ivy pattern="http://repository.springsource.com/ivy/bundles/external/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
    <artifact pattern="http://repository.springsource.com/ivy/bundles/external/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
</url>

我的 ivy.xml 文件包括:

<dependency org="org.junit"
            name="com.springsource.org.junit" 
            rev="4.4.0" />

从我运行 Ivy 开始,我可以看出它的解决方案是:http://repository.springsource.com/ivy/bundles/external/org.junit/com.springsource.org.junit/4.4.0/com.springsource.org.junit-sources-4.4.0.jar http://repository.springsource.com/ivy/bundles/external/org.junit/com.springsource.org.junit/4.4.0/com.springsource.org.junit-sources-4.4.0.jar

所以决议如下:

[organization] => "org.junit"
[module] => "com.springsource.org.junit"
[revision] => "4.4.0"
[artifact] => "com.springsource.org.junit-sources"
[ext] => "jar"

我看到 ivy 如何解析 URL 模式中的 [organization]、[module] 和 [revision](废话),但它如何解析 [artifact] 和 [ext]?

The 有关 URL 解析器的文档 http://ant.apache.org/ivy/history/trunk/resolver/url.html似乎有所欠缺。


Ivy首先解决了<ivy pattern... />,给出了组织、模块和修订,以及[artifact]硬编码为“ivy”并且[ext]硬编码为“xml”。这会产生一个 URL,在本例中:

http://repository.springsource.com/ivy/bundles/external/org.junit/com.springsource.org.junit/4.4.0/ivy-4.4.0.xml http://repository.springsource.com/ivy/bundles/external/org.junit/com.springsource.org.junit/4.4.0/ivy-4.4.0.xml

这是该模块的 ivy 配置文件。除此之外,这个 ivy 配置文件包含有关其他工件的信息,特别是:

<artifact name="com.springsource.org.junit-sources" type="src" ext="jar"/>
<artifact name="license" type="license" ext="txt"/>

然后使用这两个来完成<artifact pattern... />部分 - 下载许可证并下载 jar 文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache Ivy 如何解析 ivysettings.xml 文件中提供的工件模式中的变量? 的相关文章

随机推荐

  • 十六进制常数 = 格式错误的数字?

    我有一个 Lua 脚本 我试图在其中使用十六进制数字 0x 如果我使用官方 Windows 二进制文件在控制台中运行此脚本 它可以正常工作 但是如果我在我的应用程序中运行它 简单的 dofile 我得到 malformed number n
  • Easy Tracker 中的 Google 分析自定义屏幕名称

    我有一个具有重用活动的应用程序 它用于不同的目的 因此仅跟踪活动名称对我没有帮助 这就是为什么我想在仍然使用 EasyTracker 的同时手动定义屏幕名称 我的代码如下所示 EasyTracker t EasyTracker getIns
  • Python:找到出现次数最多的单词?

    我试图让我的程序报告文本文件中出现最多的单词 例如 如果我输入 你好 我喜欢馅饼 因为它们非常好吃 程序应该打印出 最喜欢的馅饼 执行选项 3 时出现此错误 KeyError h Prompt the user to enter a blo
  • chrome 扩展,弹出窗口的高度

    在我看来 弹出窗口的高度有 489 像素的限制 如果我将弹出窗口的主体元素设置为 600 像素的高度 则弹出窗口将获得一个滚动条 因为内部页面变大 但弹出窗口不会更改其大小 是否可以使弹出窗口的高度大于 489 像素 Set height两
  • 在 iOS 12 中以编程方式从屏幕时间获取应用程序使用情况

    我正在开发一个项目 我想获得其他应用程序的使用时间 苹果发布了iOS 12并提供了新功能Screen Time 我想知道Apple是否提供任何方式或API来从中获取数据 不可以 在 iOS 上 每个应用程序都在自己的沙箱中运行 无法查看其他
  • 在 Angular 4 中使用权限的最佳方式是什么?

    在我的 Angular 4 项目中 我想使用从 API 获得的权限 权限保存为带有 ids 的数组 某些单个元素 例如用户或博客文章 具有允许权限的属性 这些属性允许或不允许编辑或删除等操作 作为带有 id 的数组 在 Angular 4
  • CruiseControl.Net + SSL

    因此 我刚刚在我的 PC 上安装了 Cruisecontrol NET 并且使用 VisualSVN 通过 https 和 虚拟 证书进行 SVN 托管 所有这些都在我的本地电脑上 问题是 当我尝试运行 Cruisecontrol NET
  • 如何在页面加载时将页面滚动到底部?

    要求 我想在页面加载时将内容滚动到页面底部 这是我的 html 代码
  • 宏定义确定大端还是小端机?

    是否有一行宏定义来确定机器的字节顺序 我正在使用以下代码 但将其转换为宏会太长 unsigned char test endian void int test var 1 unsigned char test endian unsigned
  • 默认情况下,ASP.NET MVC 4 是否需要额外的 XSS 处理

    默认情况下 ASP NET MVC 4 会忽略帖子消息中的 HTML 输入 如果我没有明确接受 HTML 是否需要编写任何代码来保护我的网站免受 XSS 攻击 我不会使用 AllowHtml or ValidateInput false 我
  • 镜头变焦模糊变量

    我在使用时遇到困难zoom函数由下式给出Control Lens 使用我的自定义 monad 变压器HearthMonad 我不知道如何满足GHC的 模棱两可型 投诉 有问题的代码位于drawCard 我该如何解决这个问题 我是否必须创建自
  • phpmyadmin自动注销时间

    如何更改 phpmyadmin 自动注销时间 它会在 1440 秒后自动注销 这对我来说非常低 如何更改选项或完全删除登录请求 更改 php ini 将更改服务器上运行的所有网站的会话持续时间 要仅为 PhpMyAdmin 更改它 请打开c
  • 使用单独的规则定义和实例化时,Boost Spirit X3 AST 无法处理语义操作

    我尝试将 Boost Spirit X3 与语义操作结合使用 同时将结构解析为 AST 如果我使用没有单独定义和实例化的规则 它就可以正常工作 例如 include
  • Facebook 应用程序选项卡 -> 使用 PHP 进行外部链接

    我目前在 Facebook 选项卡上有一个应用程序 我想知道是否有办法让我深入链接到该应用程序选项卡上的项目 例子 用户在应用程序中 正在搜索书籍 找到一本他们喜欢的书 并想与朋友分享 他们点击分享它 我可以提取所有信息 但是我没有深层链接
  • java - JUnit 测试失败挂钩上的 Cucumber

    我们使用 Cucumber JVM 编写验收测试脚本 并使用 JUnit 来执行它们 通过 JUnit Cucumber 运行程序 由于这些测试涉及 Selenium WebDriver 因此我希望能够在测试失败时截取屏幕截图 我有代码 如
  • 如何在 Dreamweaver 中设置 PHP 测试服务器?

    我正在尝试设置一个 PHP 服务器 以便我可以使用 Dreamweaver 中的 实时 功能 此外还可以在浏览器中预览 而不必每次都通过 FTP 应用程序上传 php 文件 这效率不高当我想做快速的小预览时 我已经设置了一个新网站 并在本地
  • Javascript 字符串到 int 的转换

    我在页面中嵌入了以下 JS var round Math round var id this attr id var len id length var indexPos len 1 index of the number so that
  • 液态状态机:它是如何工作的以及如何使用它?

    我现在正在学习LSM 液态状态机 我试图了解它们到底是如何用于学习的 我对在网上读到的内容感到非常困惑 我将写出到目前为止我所理解的内容 但这可能是不正确的 所以如果您能纠正我并解释什么是正确的 我会很高兴 LSM 根本没有经过训练 它们只
  • Scala 突破地图

    当满足这样的条件时 我需要打破 seq 映射 其中foo将返回一个对象列表 其中大小取决于找到 targetId 所需的时间 def foo ids Seq String targetId String ids map id gt getO
  • Apache Ivy 如何解析 ivysettings.xml 文件中提供的工件模式中的变量?

    如果我的 ivysettings xml 文件包含