IVY错误:找不到ivy.xml文件

时间:2012-07-20 04:03:42

标签: ant ivy

我有以下ant和常春藤文件来设置我的项目。我希望ivy解析文件D:/workspace/lib/apache/log4j/1.2.16/ivy.xml以检索log4j.jar。

但Ivy会解析文件D:/workspace/BuildStudy/ivy.xml。我没有D:/workspace/BuildStudy/ivy.xml file。有没有人知道我的蚂蚁和常春藤设置文件有什么问题。感谢。

build.xml文件包含:

<project name="BuildStudy" default="main" xmlns:ivy="antlib:org.apache.ivy.ant">    
    <target name="resolve" description="--> retrieve dependencies with ivy">        
      <ivy:retrieve/>
    </target>
</project>

ivysetting.xml文件包含:

<ivysettings>
    <properties file="D:/workspace/BuildStudy/ivysettings-file.properties" />
    <caches  defaultCacheDir="${cache.dir}" />
    <property name="base.dir" value="D:/workspace/lib"/>
    <settings defaultResolver="CRMlocal"/>
    <resolvers>
        <filesystem name="CRMlocal">
            <ivy pattern="${base.dir}/[organisation]/[module]/[revision]/ivy.xml"/>
            <artifact pattern="${base.dir}/[organisation]/[module]/[revision]/[artifact].[ext]"/>
            <artifact pattern="${base.dir}/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
        </filesystem>
    </resolvers>
</ivysettings>

ivysettings-file.properties文件包含: cache.dir = d:/workspace/BuildStudy/.ivy_cache

2 个答案:

答案 0 :(得分:6)

将以下属性添加到build.xml:

   <property name="ivy.dep.file" value="PATH TO ivy.xml" />

答案 1 :(得分:0)

ivy.xml个文件描述了一个工件及其依赖项。

Ivy文件通常用于/存在于两个位置:

  1. 一个存储库(例如,它描述了log4j工件)
  2. 项目(描述项目并将ivy.xml列为依赖项)
  3. 您已经迈出了第一步并创建了一个本地存储库,您resolve使用了文件系统解析程序。

    现在您需要为您的项目声明一个ivy.xml,如:

    <?xml version="1.0" encoding="UTF-8"?>
    <ivy-module version="2.0"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:noNamespaceSchemaLocation=
                       "http://ant.apache.org/ivy/schemas/ivy.xsd">
    <info organisation="myorg" module="BuildStudy"/>
    <configurations>
        <conf name="compile" visibility="public" />
    </configurations>
    <publications>
       <artifact name="BuildStudy" type="jar"  conf="compile" ext="jar"/>
    </publications>
    <dependencies>>
        <dependency org="log4j" name="log4j" rev="1.2.14" conf="compile->*"/>
    </ivy-module> 
    

    这将使用以下详细信息描述您的项目:

    • 这个项目将构建并提供一个工件BuildStudy.jar
    • 这个项目需要log4j来编译