我刚开始使用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>