Ivy 的使用完全基於「Ivy 檔案」——模組描述符。Ivy 檔案是 XML 檔案,通常命名為 ivy.xml,包含模組依賴描述、發布的制品及其配置。
<ivy-module version="2.0">
<info organisation="myorg" module="mymodule"/>
</ivy-module>
可在 ivy 檔案中宣告 XSD 以獲得 IDE 自動完成和驗證:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="https://ant.apache.org/ivy/schemas/ivy.xsd">
<info organisation="myorg" module="mymodule"/>
</ivy-module>
模組開發期間,描述符管理可能變動的依賴。可宣告動態依賴(如 "latest.integration" 或 "1.0.+"),變數提供更多彈性。動態 ivy 檔案隨時間產生不同結果,通常作為原始碼檔案受 SCM 控制。
每次發布需記錄特定修訂版本的依賴。發布的模組修訂版本取得固定、明確解析的依賴,不允許變數。這類靜態 ivy 檔案稱為 "resolved",通常產生相同結果。確定的 ivy 檔案由 deliver 任務從動態 ivy 檔案產生,與發布制品一起儲存在倉庫中。
注意:雖然技術上可用動態 ivy 發布,但不推薦。
ivy-module
info
license
ivyauthor
repository
description
configurations
conf
publications
artifact
conf
dependencies
dependency
conf
mapped
artifact
conf
include
conf
exclude
conf
exclude
override
conflicts
manager
每個 Ivy 檔案的根標籤。
| 屬性 | 描述 | 必要 |
|---|---|---|
| version | Ivy 檔案規格版本,目前應為 '2.0' | 是 |
| 元素 | 描述 | 基數 |
|---|---|---|
| info | 包含被描述模組的資訊 | 1 |
| configurations | 配置元素容器 | 0..1 |
| publications | 發布制品元素容器 | 0..1 |
| dependencies | 依賴元素容器 | 0..1 |
| conflicts | 配置使用的衝突管理器區段 | 0..1 |