在Eclipse中映射多个常春藤文件

时间:2012-10-18 13:56:20

标签: eclipse ant ivy ant-contrib

我正在用Ivy改变我的日食构建路径。

我还成功修改了我的ANT版本,加载了2个Ivy文件来检索我的依赖项:

在我的portlet构建文件中,我专门调用所有portlet的公共依赖项,这阻止我在每个Portlet项目中指定相同的librairies:

    <if>
        <available file="${rpm.homedir}/Builder/ivy_portlet.xml" />
        <then>
            <echo message="Getting runtime portlet dependencies using Ivy project's configuration" />
            <ivy:resolve file="${rpm.homedir}/Builder/ivy_portlet.xml"/>
            <ivy:retrieve pattern="${project.lib.dir}/[conf]/[artifact]-[revision](-[classifier]).[ext]" file="${rpm.homedir}/Builder/ivy_portlet.xml"/>
        </then>
        <else>
            <fail message=" file ${rpm.homedir}/Builder/ivy_portlet.xml not found in the builded project." />
        </else>
    </if>

以下是我所有项目的build.xml片段代码:

<target name="get-dependencies">
    <if>
        <available file="${basedir}/ivy.xml" />
        <then>
            <echo message="Getting deps using Ivy project's configuration" />
            <ivy:resolve file="${basedir}/ivy.xml"/>
            <ivy:retrieve pattern="${project.lib.dir}/[conf]/[artifact]-[revision](-[classifier]).[ext]" file="${basedir}/ivy.xml"/>
        </then>
        <else>
            <fail message=" file ${basedir}/ivy.xml not found in the builded project." />
        </else>
    </if>
</target>

ANT的一切运行良好。

如何使用IvyIDE插件设置位于另一个项目中的通用Ivy文件?

1 个答案:

答案 0 :(得分:2)

使用常春藤扩展http://ant.apache.org/ivy/history/latest-milestone/ivyfile/extends.html

马克说,不要制造问题,然后尝试解决它。您可以使用extends来使用另一个ivy-portlet.xml [它本身驻留在一个模块中],其中包含extendType =“depenencies”

每个项目使用一个,IvyDE和常春藤文档将在您身边。尝试操纵,你会发现自己一个人。