Netbeans中的常春藤build.xml

时间:2017-04-04 19:17:48

标签: java netbeans ant build ivy

我正在尝试将Apache Ivy集成到Netbeans Web应用程序项目中。

我的build.xml文件遵循netbeans教程: http://wiki.netbeans.org/FaqIvy

具体做法是:

     <target name="-ivy-retrieve">
        <ivy:retrieve/> <!-- Load dependencies to the project -->
        <pathconvert property="ivy.classpath.computed" dirsep="/" pathsep=":">
            <path>
                <fileset dir="lib" includes="*.jar"/>
            </path>
            <map from="${basedir}${file.separator}" to=""/>
        </pathconvert>
        <propertyfile file="nbproject/project.properties">
            <entry operation="=" key="ivy.classpath" value="${ivy.classpath.computed}"/>
        </propertyfile>
    </target>
    <target name="-pre-compile" depends="-ivy-retrieve"/>
    <target name="-pre-compile-single" depends="-ivy-retrieve"/>
    <target name="-post-clean">
        <delete dir="lib"/>
    </target> 

奇怪的是,这会更新ivy.classpath文件中的nbprojects.project.properties,但我似乎无法获取构建的WEB-INF/lib文件夹以填充.jar的{​​{1}}列为依赖项。

奇怪的是,我有一天工作了,并且能够填充构建的WEB-INF/lib文件夹,现在当我删除依赖项时,构建中包含相同的jar文件(而不是删除它们)。 / p>

有关如何更改build.xml文件的任何建议?或者其他任何可以让Ivy成功集成到我的构建过程中的任何东西(Ivy被检测到:我在构建时看到“解析报告”和“检索”)。

我尝试过的一些事情: 我在上面的链接教程中玩了不同的选项(试过包括: <property name="ivy.lib.dir" value="web/WEB-INF/lib/"/>任务中-ivy-retrieve<ivy:resolve/>之前添加<ivy:retrieve/>任务

1 个答案:

答案 0 :(得分:0)

ivy:retrieve task具有sync属性,可删除不再相关的依赖项。 另外,执行clean and build会有所帮助。