It is a bug that has been fixed in RC2.
RC2 will hopefully be released shortly, there is a vote running for it atm on 
the ant-dev list.

Maarten




----- Original Message ----
From: "Kanjo, Samer" <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Sent: Wednesday, October 29, 2008 8:00:22 PM
Subject: RE: Dependency Resolution Problems in RC1

I cleaned the hello-ivy project using RC1 and then did a build using
verbose. The following is the output up to the retrieval of the 3
commons projects. You see that the cli sources and the lang javadocs are
retrieved rather than the class jars. Is there a configuration change I
need to make or is this a bug?


G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy>ant -v
Apache Ant version 1.7.0 compiled on December 13 2006
Buildfile: build.xml
Detected Java version: 1.5 in: E:\jdk\jdk1.5.0_11\jre
Detected OS: Windows XP
parsing buildfile G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\build.xml
with URI = file:/G:/lib/ivy-2.0.0-rc1/src/example/hello-ivy/build.xml
Project base dir set to: G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy
[antlib:org.apache.tools.ant] Could not load definitions from resource
org/apache/tools/ant/antlib.xml. It could not be found.
Build sequence for target(s) `run' is [resolve, run]
Complete build sequence is [resolve, run, report, clean, clean-cache, ]

resolve:
parsing buildfile
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/ant/a
ntlib.xml with URI =
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/ant/a
ntlib.xml
No ivy:settings found for the default reference 'ivy.instance'.  A
default instance will be used
Loading
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivy.properties
searching settings file: trying
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\ivysettings.xml
searching settings file: trying
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\ivyconf.xml
searching settings file: trying ivysettings.xml
searching settings file: trying ivyconf.xml
no settings file found, using default...
[ivy:retrieve] :: Ivy 2.0.0-rc1 - 20080916082609 ::
http://ant.apache.org/ivy/ ::
:: loading settings :: url =
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings.xml
no default ivy user dir defined: set to D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2
including url:
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings-public.xml
no default cache defined: set to D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache
including url:
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings-shared.xml
including url:
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings-local.xml
including url:
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings-main-chain.xml
including url:
jar:file:/E:/tools/ant-1.7.0/lib/ivy-2.0.0-rc1.jar!/org/apache/ivy/core/
settings/ivysettings-default-chain.xml
settings loaded (188ms)
    default cache: D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache
    default resolver: default
    -- 5 resolvers:
    main [chain] [shared, public]
    public [ibiblio]
    local [file]
    shared [file]
    default [chain] [local, main]
[ivy:retrieve] no resolved descriptor found: launching default resolve
Overriding previous definition of property "ivy.version"
[ivy:retrieve] using ivy parser to parse
file:/G:/lib/ivy-2.0.0-rc1/src/example/hello-ivy/ivy.xml
[ivy:retrieve] :: resolving dependencies ::
org.apache#hello-ivy;[EMAIL PROTECTED]
[ivy:retrieve]     confs: [default]
[ivy:retrieve]     validate = true
[ivy:retrieve]     refresh = false
[ivy:retrieve] resolving dependencies for configuration 'default'
[ivy:retrieve] == resolving dependencies for
org.apache#hello-ivy;[EMAIL PROTECTED] [default]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-lang#commons-lang;2.0
[default->*]
[ivy:retrieve] default: Checking cache for: dependency:
commons-lang#commons-lang;2.0 {*=[*]}
[ivy:retrieve] default: module revision found in cache:
commons-lang#commons-lang;2.0
[ivy:retrieve]     found commons-lang#commons-lang;2.0 in public
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-lang#commons-lang;2.0
[default->runtime]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-lang#commons-lang;2.0
[default->compile]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-lang#commons-lang;2.0
[default->master]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-lang#commons-lang;2.0
[default->compile]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->*]
[ivy:retrieve] default: Checking cache for: dependency:
commons-cli#commons-cli;1.0 {*=[*]}
[ivy:retrieve] default: module revision found in cache:
commons-cli#commons-cli;1.0
[ivy:retrieve]     found commons-cli#commons-cli;1.0 in public
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->runtime]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->compile]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-logging#commons-logging;1.0
[compile->compile(*)]
[ivy:retrieve] default: Checking cache for: dependency:
commons-logging#commons-logging;1.0 {compile=[compile(*), master(*)],
runtime=[runtime(*)]}
[ivy:retrieve] default: module revision found in cache:
commons-logging#commons-logging;1.0
[ivy:retrieve]     found commons-logging#commons-logging;1.0 in public
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-logging#commons-logging;1.0
[compile->master(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;1.0
[compile->compile(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;2.0
[compile->compile(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;1.0
[compile->master(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;2.0
[compile->master(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-logging#commons-logging;1.0
[runtime->runtime(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-logging#commons-logging;1.0
[runtime->compile]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;1.0
[runtime->runtime(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;2.0
[runtime->runtime(*)]
[ivy:retrieve] == resolving dependencies
commons-cli#commons-cli;1.0->commons-lang#commons-lang;2.0
[runtime->compile]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->master]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->compile]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->javadoc]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->sources]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->optional]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->default]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->runtime]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->compile]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->master]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->system]
[ivy:retrieve] == resolving dependencies
org.apache#hello-ivy;[EMAIL PROTECTED]>commons-cli#commons-cli;1.0
[default->provided]
[ivy:retrieve]     resolved ivy file produced in D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache\resolved-org.apache-hello-ivy-workin
[EMAIL PROTECTED]
[ivy:retrieve] :: downloading artifacts ::
[ivy:retrieve]     [NOT REQUIRED]
commons-lang#commons-lang;2.0!commons-lang.jar(source)
[ivy:retrieve]     [NOT REQUIRED]
commons-lang#commons-lang;2.0!commons-lang.jar
[ivy:retrieve]     [NOT REQUIRED]
commons-lang#commons-lang;2.0!commons-lang.jar(javadoc)
[ivy:retrieve]     [NOT REQUIRED]
commons-cli#commons-cli;1.0!commons-cli.jar(javadoc)
[ivy:retrieve]     [NOT REQUIRED]
commons-cli#commons-cli;1.0!commons-cli.jar
[ivy:retrieve]     [NOT REQUIRED]
commons-cli#commons-cli;1.0!commons-cli.jar(source)
[ivy:retrieve]     [NOT REQUIRED]
commons-logging#commons-logging;1.0!commons-logging.jar
[ivy:retrieve] :: resolution report :: resolve 328ms :: artifacts dl
47ms
[ivy:retrieve]     :: evicted modules:
[ivy:retrieve]     commons-lang#commons-lang;1.0 by
[commons-lang#commons-lang;2.0] in [default]
[ivy:retrieve]       in commons-cli#commons-cli;1.0 with latest-revision
    
---------------------------------------------------------------------
    |                  |            modules            ||
artifacts   |
    |       conf       | number| search|dwnlded|evicted||
number|dwnlded|
    
---------------------------------------------------------------------
    |      default     |   4   |   0   |   0   |   1   ||   7   |
0   |
    
---------------------------------------------------------------------
[ivy:retrieve]     report for org.apache#hello-ivy;[EMAIL PROTECTED]
default produced in D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache\org.apache-hello-ivy-default.xml
[ivy:retrieve]     resolve done (328ms resolve - 47ms download)
[ivy:retrieve] :: retrieving :: org.apache#hello-ivy
[ivy:retrieve]     checkUpToDate=true
[ivy:retrieve]     confs: [default]
[ivy:retrieve]     conflict on
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\lib\commons-cli-1.0.jar in
[default]: 1.0 won
[ivy:retrieve]         removing conflict looser artifact:
commons-cli#commons-cli;1.0!commons-cli.jar(javadoc)
[ivy:retrieve]         removing conflict looser artifact:
commons-cli#commons-cli;1.0!commons-cli.jar
[ivy:retrieve]     conflict on
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\lib\commons-lang-2.0.jar in
[default]: 2.0 won
[ivy:retrieve]         removing conflict looser artifact:
commons-lang#commons-lang;2.0!commons-lang.jar(source)
[ivy:retrieve]         removing conflict looser artifact:
commons-lang#commons-lang;2.0!commons-lang.jar
[ivy:retrieve]     retrieving D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache\commons-logging\commons-logging\jars
\commons-logging-1.0.jar
[ivy:retrieve]         to
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\lib\commons-logging-1.0.jar
[ivy:retrieve]     retrieving D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache\commons-lang\commons-lang\javadocs\c
ommons-lang-2.0-javadoc.jar
[ivy:retrieve]         to
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\lib\commons-lang-2.0.jar
[ivy:retrieve]     retrieving D:\Documents and
Settings\skanjo.TRIBUNE\.ivy2\cache\commons-cli\commons-cli\sources\comm
ons-cli-1.0-sources.jar
[ivy:retrieve]         to
G:\lib\ivy-2.0.0-rc1\src\example\hello-ivy\lib\commons-cli-1.0.jar
[ivy:retrieve]     3 artifacts copied, 0 already retrieved (536kB/47ms)
[ivy:retrieve]     retrieve done (47ms)


-----Original Message-----
From: Kanjo, Samer [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, October 29, 2008 1:00 PM
To: [EMAIL PROTECTED]
Subject: Dependency Resolution Problems in RC1

I installed RC1 today and ran the hello-ivy to verify it was working and
it was. I had previously been playing with Beta 2.

I cleared the cache and the project and tried running again expected
this time it failed to compile. I verified the libraries had been
resolved to the lib directory. I opened up the JARs in the lib directory
and I found that the commons-cli-1.0.jar file contained the javadocs
rather than the class files. So I checked the cache and I found that the
classes, sources, and javadocs had been downloaded , which is nice. I
opened each of those JARs to verify their contents and all was well.

I tried cleaning and running the project several times. I observed that
commons-lang-2.0.jar contained javadocs rather than classes and
occasionally either commons-lang or commons-cli would contain the source
files rather than the javadocs or classes. The odd thing is that I never
had an issue with the transitive dependency on commons-logging-1.0.jar.
By that I mean the correct JAR was always returned.

Since I did compile and run the first time I wondered what had changed.
I deleted my cache directory and re-installed Beta 2 and ran hello-ivy
successfully. I then re-installed RC1, leaving the cache intact and did
a clean build and it worked fine. After deleting the cache yet again and
re-running RC1 the compile failed due to the reasons I described.

There seems to be an issue with using the newer cache directory
structure when resolving dependencies. 



      

Reply via email to