On Jun 9, 2009, at 12:44 PM, cressie176 wrote:

I'm trying to use the springframework 3.0.0.M3 release which is hosted in an ivy repository
repositorys {
    ...
    add(new org.apache.ivy.plugins.resolver.URLResolver()) {
        name = 'spring-milestones'
addIvyPattern "http://repository.springsource.com/ivy/bundles/milestone/ [organisation]/[module]/[revision]/[artifact]-[revision].[ext]" addArtifactPattern "http://repository.springsource.com/ivy/bundles/milestone/ [organisation]/[module]/[revision]/[artifact]-[revision].[ext]"
    }
}

dependencies {
        ...
        compile "org.springframework:org.springframework.core:3.0.0.M3"
        compile "org.springframework:org.springframework.context:3.0.0.M3"
        compile "org.springframework:org.springframework.beans:3.0.0.M3"
        compile "org.springframework:org.springframework.web:3.0.0.M3"
compile "org.springframework:org.springframework.web.servlet: 3.0.0.M3"
        ...
}
The files seem to be downloading OK but I end up with the following error.
downloading (5 KB) 
http://repository.springsource.com/ivy/bundles/milestone/org.springframework/org.springframework.web/3.0.0.M3/ivy-3.0.0.M3.xml
...
downloading (6 KB) 
http://repository.springsource.com/ivy/bundles/milestone/org.springframework/org.springframework.web.servlet/3.0.0.M3/ivy-3.0.0.M3.xml
.....
:: problems summary ::
:::: WARNINGS
                ::::::::::::::::::::::::::::::::::::::::::::::

                ::          UNRESOLVED DEPENDENCIES         ::

                ::::::::::::::::::::::::::::::::::::::::::::::

:: org.springframework#org.springframework.web;3.0.0.M3: configuration not found in org.springframework#org.springframework.web;3.0.0.M3: 'default'. It was required from unspecified#Residue;unspecified compile

:: org.springframework#org.springframework.web.servlet;3.0.0.M3: configuration not found in org.springframework#org.springframework.web.servlet;3.0.0.M3: 'default'. It was required from unspecified#Residue;unspecified compile

                ::::::::::::::::::::::::::::::::::::::::::::::
I suspect this is an Ivy Config / Spring issue rather than anything to do with gradle, but not being familiar with Ivy I haven't got a clue what it means, or how to fix it. Any help appreciated. S

If you look at the ivy.xml of http://repository.springsource.com/ivy/bundles/milestone/org.springframework/org.springframework.web/3.0.0.M3/ivy-3.0.0.M3.xml you can see that there are a number of custom configurations defined. Each configuration specifies a set of jars published by this project as well as the dependencies of those jars. If you look at the publications element of the ivy.xml you find two entries. They don't specify any particular configuration they belong to. This means this project published two jars and they belong to every configuration. If you look at the dependencies section you will see that different dependencies belong to different configurations.

The 'default' configuration has a special meaning in ivy. If you declare a dependency and don't specify a configuration for this dependency, ivy uses the default configuration (in case you access a pom.xml via Ivy, default corresponds to the runtime Maven scope). But the particular Spring project above does not define a default configuration. Therefore you need to choose which configuration you want to use. You can do that by:

compile group: "org.springframework", name: "org.springframework.web", version: "3.0.0.M3", configuration: "runtime"

You have to use the Gradle map notation if you want to specify configurations.

In Ivy you can change the name of the default configuration. You can even define a filter that a different default configuration shall be used only for dependencies belonging to a certain group (aka organization). In you case for example it would make sense to say, for all spring dependencies use 'runtime' as the default configuration, for the others use 'default'. But this is not offered by Gradle yet.

- Hans

--
Hans Dockter
Gradle Project Manager
http://www.gradle.org


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to