I have made another attempt using Eclipse 3.2 and IvyDE 1.2. The settings file has been changed to :
<?xml version="1.0" encoding="ISO-8859-1"?>
<ivyconf>
<conf defaultCache="./ivy_cache2" defaultResolver="external-lib" checkUpToDate="false" />
   <resolvers>
       <vfs name="external-lib" allownomd="false">
<ivy pattern="ftp://********:[EMAIL PROTECTED]/external-lib/[organisation]/[module]/[revision]/[artifact]-[revision].xml" /> <artifact pattern="ftp://********:[EMAIL PROTECTED]/external-lib/[organisation]/[module]/[revision]/[artifact]-[revision].jar" />
       </vfs>
   </resolvers>
</ivyconf>

The results are the same than with Eclipse 3.3 and IvyDE 1.3 - nightly build. If i specify either junit 3.8.1 or 3.8.2, the ivy file and he jar are properly resolved and retrieved. But when it comes to dynamic revision 3.8.+, it fails :

Could not determine the last modified timestamp of "ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/3.8.+/ivy-3.8.+.xml" because it does not exist. listing all in ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/[revision]/ivy-[revision].xml using external-lib to list all in ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/ list called for URIftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/
resourceImpl=ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit
resourceImpl.exists()false
resourceImpl.getType()imaginary
FileType.FOLDERfolder
       found 0 resources
   found revs: []
external-lib: no resource found for [ junit | junit | 3.8.+ ]: pattern=ftp://*******:[EMAIL PROTECTED]/external-lib/[organisation]/[module]/[revision]/[artifact]-[revision].xml
   external-lib: no ivy file found for [ junit | junit | 3.8.+ ]
tried ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/3.8.+/ivy-3.8.+.xml tried ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/[3.8.+]/ivy-[3.8.+].xml
WARN:     module not found: [ junit | junit | 3.8.+ ]
WARN: external-lib: tried ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/3.8.+/ivy-3.8.+.xml WARN: external-lib: tried ftp://*******:[EMAIL PROTECTED]/external-lib/junit/junit/[3.8.+]/ivy-[3.8.+].xml

It makes me think that my repository is somehow incorrect.
However, the user has proper rights to list content of /external-lib/junit/junit/ directory. The dynamic revision works well with the same ivy.xml and settings file using ant. This directory has two subfolder named 3.8.1 and 3.8.2. Each folder contains the junit-revision.jar and ivy-revision.xml file.
I'm confused. Is it possible to use dynamic revision with ivyde at all ?

Regards,
Guillaume

guillaume a écrit :
Thanks for pointing out the console.
The logs are pretty much the same. It seems ivyde is looking for a fixed revision named 3.8.+ instead of the lastest 3.8.x Actually i'm been forced to stick to fixed revisions in Eclipse which will really slow down the adoption of ivy by my customer. I've had a look to SVN but i'm not an expert in plugin development and couldn't find out anything relevant.

:: problems summary ::
:::: WARNINGS
       module not found: junit#junit;3.8.+
   ==== ftp: tried
ftp://********:[EMAIL PROTECTED]/external-lib/junit/junit/3.8.+/ivy-3.8.+.xml ftp://********:[EMAIL PROTECTED]/external-lib/junit/junit/[revision]/ivy-[revision].xml
       ::::::::::::::::::::::::::::::::::::::::::::::
       ::          UNRESOLVED DEPENDENCIES         ::
       ::::::::::::::::::::::::::::::::::::::::::::::
       :: junit#junit;3.8.+: not found
       ::::::::::::::::::::::::::::::::::::::::::::::


Nicolas Lalevée a écrit :
Le lundi 18 février 2008, guillaume a écrit :
Hello,

I'm having troubles with dynamic revision in IvyDE. The following
configuration works fine with Ant but fails with IvyDE
(org.apache.ivyde.eclipse_1.3.0.20071209120000.jar).
JUnit 3.8.+ gets resolved to the latest 3.8.x version available on my
repository (3.8.2 in this test) with an ant resolve task. But it isn't
resolved at all with IvyDE.
In ant, the related logs are pretty simple (ant ivy settings are
pointing to the same ivy settings file than ivyde) :
[ivy:retrieve] found junit#junit;3.8.2 in ftp
[ivy:retrieve] [3.8.2] junit#junit;3.8.+


Some of my colleagues did have the same issues in trying the 1.3 version of IvyDE. But they didn't had time to do further debugging or test so I cannot help them.



Thanks for any hint !

Regards.
Guillaume

Here are various configuration files and logs :
Project ivy.xml
<ivy-module version="2.0">
    <info organisation="customer" module="IvyTestProject"
revision="1.0.0" status="integration"/>
    <configurations>
        <conf name="default"/>
        <conf name="test" extends="default"/>
    </configurations>

    <publications>
        <artifact name="ivytestproject" type="jar" ext="jar" conf="*"/>
    </publications>

    <dependencies>
<dependency org="junit" name="junit" rev="3.8.+" conf="default"/>
        <dependency org="junit-addons" name="junit-addons" rev="1.4"
conf="test->master;test->runtime" />
        <dependency org="org.springframework" name="spring" rev="2.0.6"
conf="default"/>
    </dependencies>
</ivy-module>



Ivy settings
<ivysettings>
    <settings defaultResolver="ftp" checkUpToDate="true"
defaultCache="./ivy_cache" />
    <resolvers>
        <vfs name="ftp" allownomd="false">
            <ivy
pattern="ftp://**********:[EMAIL PROTECTED]/external-lib/[organisation
]/[module]/[revision]/[artifact]-[revision].xml" />
            <artifact
pattern="ftp://**********:[EMAIL PROTECTED]/external-lib/[organisation
]/[module]/[revision]/[artifact]-[revision].jar" />
        </vfs>
    </resolvers>
</ivysettings>


Repository structure :
The folder <ftpuser_home>\external-lib\junit\junit exists and has two
subfolders named after version numbers :
3.8.1 which contains ivy-3.8.1.xml, jars and so on
3.8.2 which contains ivy-3.8.2.xml, jars and so on


IvyDE says :
Impossible to resolve dependencies of dexiabil#IvyTestProject;1.0.0:
unresolved dependency: junit#junit;3.8.+: not found
unresolved dependency: junit#junit;3.8.+: not found
See IvyConsole for further details
--> I couldn't found a eclipse view / logfile named IvyConsole. Eclipse
error log states that no stacktrace is available.


In fact the "Ivy console" is a "console". So see the console view, and choose the "Ivy console" in the console's menu, menu containing also "Java stack trace console", "CVS", etc...
And so you will have the proper Ivy debugging infos.

Nicolas






Reply via email to