Yes, the configuration sets test as private when translating the pom. Is there 
some way to avoid this? I'd like to include it as a test dependency just so 
that it runs as part of our tests (our current build scripts treat test confs 
as runtime deos when running tests).


Thanks,
James

________________________________________
From: Maarten Coene [maarten_co...@yahoo.com]
Sent: Monday, December 13, 2010 6:11 PM
To: ivy-u...@ant.apache.org
Subject: Re: using ivy iwth artifactory

Could it be that your "jpa-generic-dao" module has a dependency on the "test"
configuration of spring-test?
That will cause this error.

Maarten




----- Original Message ----
From: James Carr <jamesc...@carfax.com>
To: "ivy-u...@ant.apache.org" <ivy-u...@ant.apache.org>
Sent: Mon, December 13, 2010 8:33:38 PM
Subject: using ivy iwth artifactory

Hi all,

I'm currently trying to resolve our ivy dependencies using artifactory so we can
take advantage of the existing maven repositories and have ran into a bit of a
snag.

When I try to resolve test dependencies I get the following:

unresolved dependency: org.springframework#spring-test;3.0.5.RELEASE:
configuration not public in org.springframework#spring-test;3.0.5.RELEASE:
'test'. It was required from myorg#jpa-generic-dao;work...@m-h5zzkn1 test

This is my configuration file:

<configurations >


  <!-- Maven styled configurations -->
  <conf name="default" visibility="public" description="runtime dependencies and
master artifact can be used with this conf" extends="runtime,master"/>
  <conf name="master" visibility="public" description="contains only the
artifact published by this module itself, with no transitive dependencies"/>
  <conf name="compile" visibility="public" description="this is the default
scope, used if none is specified. Compile dependencies are available in all
classpaths."/>
  <conf name="provided" visibility="public" description="this is much like
compile, but indicates you expect the JDK or a container to provide it. It is
only available on the compilation classpath, and is not transitive."/>
  <conf name="runtime" visibility="public" description="this scope indicates
that the dependency is not required for compilation, but is for execution. It is
in the runtime and test classpaths, but not the compile classpath."
extends="compile"/>
  <conf name="test"
                visibility="private"
                description="this scope indicates that the dependency is not
required for normal use of the application, and is only available for the test
compilation and execution phases."
                extends="runtime"/>
  <conf name="system" visibility="public" description="this scope is similar to
provided except that you have to provide the JAR which contains it explicitly.
The artifact is always available and is not looked up in a repository."/>
  <conf name="sources" visibility="public" description="this configuration
contains the source artifact of this module, if any."/>
  <conf name="javadoc" visibility="public" description="this configuration
contains the javadoc artifact of this module, if any."/>
  <conf name="optional" visibility="public" description="contains all optional
dependencies"/>
</configurations>

And my Ivy Settings:

<?xml version="1.0" encoding="UTF-8"?>
<ivyconf>
                <settings defaultResolver="artifactory"
defaultCache="c:/ivy-cache" />
                 <resolvers>
                                <ibiblio name="artifactory" m2compatible="true"
root="http://cfxbuild:8081/artifactory/repo"; />
                </resolvers>
</ivyconf>

Everything seems to resolve fine, it's just the damn test configuration that
gripes all the time. I have tried setting the visibility to public as well as
making it not extend runtime and it still fails to resolve. Any help would be
much appreciated. :)


Thanks,
James

Reply via email to