Ant 按顺序调用2个ivy文件
我正试着一个接一个地打电话 当存在my ivy_portlet.xml时,第二个调用不会执行 当我的ivy_portlet.xml不存在时,第二个调用检索ivy.xml的内容 当这两个文件存在时,只执行第一个文件 我错过了什么Ant 按顺序调用2个ivy文件,ant,ivy,ant-contrib,Ant,Ivy,Ant Contrib,我正试着一个接一个地打电话 当存在my ivy_portlet.xml时,第二个调用不会执行 当我的ivy_portlet.xml不存在时,第二个调用检索ivy.xml的内容 当这两个文件存在时,只执行第一个文件 我错过了什么 <if> <available file="${basedir}/ivy_portlet.xml" /> <then> <echo message="Getting
<if>
<available file="${basedir}/ivy_portlet.xml" />
<then>
<echo message="Getting runtime portlet dependencies using Ivy project's configuration" />
<ivy:retrieve pattern="${project.lib.dir}/[conf]/[artifact]-[revision](-[classifier]).[ext]" file="${basedir}/ivy_portlet.xml"/>
</then>
</if>
<if>
<available file="${basedir}/ivy.xml" />
<then>
<echo message="Getting deps using Ivy project's configuration" />
<ivy:retrieve pattern="${project.lib.dir}/[conf]/[artifact]-[revision](-[classifier]).[ext]" file="${basedir}/ivy.xml"/>
</then>
</if>
ant代码看起来不错,我甚至在本地测试了它(没有ivy检索任务),并且执行了两个if语句。当两个文件都存在并且第一个ivy检索触发时,检索是否成功完成而没有错误或失败?可能是短路了。查看日志在这里可能会有所帮助。以下是技巧: 当使用不同于ivy.xml的文件名时,必须调用resolve
<ivy:resolve file="${rpm.homedir}/Builder/ivy_portlet.xml"/>
在我看来,您正在尝试管理不同的依赖项组?在这种情况下,配置(在单个常春藤文件中)将以更灵活的方式解决您的问题?很高兴你让它工作了。