我剛開始使用Ivy,而且我非常掙扎,因爲我發現Apache網站上的文檔和教程非常混亂,並且與如何不相關我想用它。如何使用Ant將不同名稱的罐子發佈到常春藤
我想用Ant發佈一些jar文件到本地的Ivy倉庫。 Ant腳本創建四個jar文件:
- 沉渣 - WS-client.jar中
- 沉渣 - WS-客戶src.jar
- 沉渣 - enums.jar
- 沉渣 - 枚舉-SRC。罐子
這些罐子應該在常春藤庫(如sed-ws-client
目錄和sed-enums
目錄)兩個不同的目錄中結束。版本庫目前在相應的目錄中包含這些jar的0.0.1和0.0.2版本,以及相應的ivy- [version] .xml文件(這是手動完成的)。
我在計算如何構建「發佈」Ant目標和項目的ivy.xml
文件時遇到了很多麻煩。我不得不在ivy.xml
文件的info
標記中放置一個模塊名稱,但這意味着我只能將jar發佈到Ivy存儲庫中的一個目錄中?
我試過各種東西,但Ant構建總是失敗。我只想簡單說明我需要採取哪些步驟才能使其工作。如果需要,可以更改存儲庫結構。
這是我到目前爲止有:
ivy.xml
文件:
<ivy-module version="1.0">
<info organisation="myorg" module="SED" revision="1.0" status="dev"></info>
<publications>
<!-- ws-client -->
<artifact name="sed-ws-client"/>
<artifact name="sed-ws-client" type="src"/>
<!-- generated -->
<artifact name="sed-enums"/>
<artifact name="sed-enums" type="src"/>
</publications>
</ivy-module>
Ant目標:
<target name="ivy-publish" description="Produce the ivy.xml file for the built jars">
<ivy:settings file="d:/temp/ivy/ivysettings.xml" />
<ivy:retrieve />
<ivy:publish organisation="myorg" resolver="default" pubrevision="0.0.2" update="true">
<artifacts pattern="${DEPLOY_DIR}/${sed.ws.client.jar}-[type].[ext]" />
<artifacts pattern="${DEPLOY_DIR}/${sed.enums.jar}-[type].[ext]" />
</ivy:publish>
</target>