You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by teknokrat <ig...@nomura.com> on 2011/08/22 18:47:57 UTC

what in the world is happening here?

I'm really confused with Ivy's behaviour. I can't seem to get it to update
everything. I publish several artifacts to the repository using:

	<publications>
		<artifact/>
		<artifact type="pom" ext="pom"/>
		<artifact type="config" ext="jar" e:classifier="config"/>
	</publications>

This works fine and I get module-1.0-SNAPSHOT.jar, module-1.0-SNAPSHOT.pom and
module-1.0-SNAPSHOT-config.jar in the repository.

However, when I define my dependencies like so

<dependency name="module" rev="latest.integration" conf="config->default"
changing="true">
	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
</dependency>

Ivy never updates the config jar. I have used a sniffer and while Ivy gets the
POM from the repository (which is Nexus) it never bothers to downloaded the
updated module-1.0-SNAPSHOT-config.jar

what could possible be going on here??





Re: what in the world is happening here?

Posted by je...@gmail.com.
Hi..
Before sniffing network did you check your logfiles ?any clues there?
Regards
Jerome
---- Envoyé avec BlackBerry® d'Orange ----

-----Original Message-----
From: teknokrat <ig...@nomura.com>
Date: Mon, 22 Aug 2011 16:47:57 
To: <iv...@ant.apache.org>
Reply-To: ivy-user@ant.apache.org
Subject: what in the world is happening here?

I'm really confused with Ivy's behaviour. I can't seem to get it to update
everything. I publish several artifacts to the repository using:

	<publications>
		<artifact/>
		<artifact type="pom" ext="pom"/>
		<artifact type="config" ext="jar" e:classifier="config"/>
	</publications>

This works fine and I get module-1.0-SNAPSHOT.jar, module-1.0-SNAPSHOT.pom and
module-1.0-SNAPSHOT-config.jar in the repository.

However, when I define my dependencies like so

<dependency name="module" rev="latest.integration" conf="config->default"
changing="true">
	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
</dependency>

Ivy never updates the config jar. I have used a sniffer and while Ivy gets the
POM from the repository (which is Nexus) it never bothers to downloaded the
updated module-1.0-SNAPSHOT-config.jar

what could possible be going on here??





Re: what in the world is happening here?

Posted by teknokrat <te...@yahoo.com>.
On 22/08/2011 18:15, Kent Rosenkoetter wrote:
> For a dependency declaration, you only declare the dependency itself and
> an optional configuration mapping.  Do not declare the artifacts of your
> dependency.  And make sure that "default" matches a configuration name in
> your module.
>
> If you declare a module named "MyLib" with configurations "runtime" and
> "build", then to depend on it you would need:
> 	<dependency name="MyLib" rev="latest.integration" conf="*->runtime"/>
>
> The "*" matches configurations in the module that depends on MyLib.  The
> "runtime" matches a configuration in MyLib itself.
>
> Kent


I am not getting this. I have a default configuration where compile time 
dependencies go and I have a config configuration where configuration 
files go. How do i declare a dependency so that each artifact gets 
assigned to the correct conf?

If I write

<dependency name="module" rev="latest.integration" conf="*->default"/>

I just get everything going into the default conf. Not what I want.







> On 8/22/11 9:47 AM, "teknokrat"<ig...@nomura.com>  wrote:
>
>> I'm really confused with Ivy's behaviour. I can't seem to get it to update
>> everything. I publish several artifacts to the repository using:
>>
>> 	<publications>
>> 		<artifact/>
>> 		<artifact type="pom" ext="pom"/>
>> 		<artifact type="config" ext="jar" e:classifier="config"/>
>> 	</publications>
>>
>> This works fine and I get module-1.0-SNAPSHOT.jar,
>> module-1.0-SNAPSHOT.pom and
>> module-1.0-SNAPSHOT-config.jar in the repository.
>>
>> However, when I define my dependencies like so
>>
>> <dependency name="module" rev="latest.integration" conf="config->default"
>> changing="true">
>> 	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
>> </dependency>
>>
>> Ivy never updates the config jar. I have used a sniffer and while Ivy
>> gets the
>> POM from the repository (which is Nexus) it never bothers to downloaded
>> the
>> updated module-1.0-SNAPSHOT-config.jar
>>
>> what could possible be going on here??
>>
>>
>>
>>
>
>



Re: what in the world is happening here?

Posted by Maarten Coene <ma...@yahoo.com>.
This seems like a bug to me, could you please open a JIRA issue?

thanks,
Maarten


________________________________
From: teknokrat <ig...@nomura.com>
To: ivy-user@ant.apache.org
Sent: Tuesday, August 23, 2011 10:57 AM
Subject: Re: what in the world is happening here?

<je...@...> writes:

> 
> Ant -debug one ?
> You should see ivy in action and understand why 
ivy does not behave as expected...

No, sorry couldn't see anything to give me a clue. 
What I did do however was redefine my dependency as:

<dependency name="module" rev="latest.integration" e:classifier="config"
conf="config->default"/>

This seems to work ok so far. However, I am disappointed that I 
cannot set a type or ext parameter. This means all my supplementary 
artifacts have to be jars and I cannot filter them on type.

I would love to see some definitive documentation on Ivy 
publishing to and retrieving dependencies from a maven 
snapshot repository. The web seems to be replete with people 
having problems but short on actual definitive answers.

Re: what in the world is happening here?

Posted by teknokrat <ig...@nomura.com>.
 <je...@...> writes:

> 
> Ant -debug one ?
> You should see ivy in action and understand why 
ivy does not behave as expected...

No, sorry couldn't see anything to give me a clue. 
What I did do however was redefine my dependency as:

<dependency name="module" rev="latest.integration" e:classifier="config"
conf="config->default"/>

This seems to work ok so far. However, I am disappointed that I 
cannot set a type or ext parameter. This means all my supplementary 
artifacts have to be jars and I cannot filter them on type.

I would love to see some definitive documentation on Ivy 
publishing to and retrieving dependencies from a maven 
snapshot repository. The web seems to be replete with people 
having problems but short on actual definitive answers.


Re: what in the world is happening here?

Posted by je...@gmail.com.
Ant -debug one ?
You should see ivy in action and understand why ivy does not behave as expected...
---- Envoyé avec BlackBerry® d'Orange ----

-----Original Message-----
From: teknokrat <te...@yahoo.com>
Date: Mon, 22 Aug 2011 21:41:30 
To: <iv...@ant.apache.org>
Reply-To: ivy-user@ant.apache.org
Subject: Re: what in the world is happening here?

what logs did you have in mind? There arew no errors in Ivy's output. 
Ant's -v flag doesn't show any problems.

On 22/08/2011 17:57, 
jerome.moliere@gmail.com wrote:
> Hi..
> Before sniffing network did you check your logfiles ?any clues there?
> Regards
> Jerome
> ---- Envoyé avec BlackBerry® d'Orange ----
>
> -----Original Message-----
> From: teknokrat<ig...@nomura.com>
> Date: Mon, 22 Aug 2011 16:47:57
> To:<iv...@ant.apache.org>
> Reply-To: ivy-user@ant.apache.org
> Subject: what in the world is happening here?
>
> I'm really confused with Ivy's behaviour. I can't seem to get it to update
> everything. I publish several artifacts to the repository using:
>
> 	<publications>
> 		<artifact/>
> 		<artifact type="pom" ext="pom"/>
> 		<artifact type="config" ext="jar" e:classifier="config"/>
> 	</publications>
>
> This works fine and I get module-1.0-SNAPSHOT.jar, module-1.0-SNAPSHOT.pom and
> module-1.0-SNAPSHOT-config.jar in the repository.
>
> However, when I define my dependencies like so
>
> <dependency name="module" rev="latest.integration" conf="config->default"
> changing="true">
> 	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
> </dependency>
>
> Ivy never updates the config jar. I have used a sniffer and while Ivy gets the
> POM from the repository (which is Nexus) it never bothers to downloaded the
> updated module-1.0-SNAPSHOT-config.jar
>
> what could possible be going on here??
>
>
>
>



Re: what in the world is happening here?

Posted by teknokrat <te...@yahoo.com>.
what logs did you have in mind? There arew no errors in Ivy's output. 
Ant's -v flag doesn't show any problems.

On 22/08/2011 17:57, 
jerome.moliere@gmail.com wrote:
> Hi..
> Before sniffing network did you check your logfiles ?any clues there?
> Regards
> Jerome
> ---- Envoyé avec BlackBerry® d'Orange ----
>
> -----Original Message-----
> From: teknokrat<ig...@nomura.com>
> Date: Mon, 22 Aug 2011 16:47:57
> To:<iv...@ant.apache.org>
> Reply-To: ivy-user@ant.apache.org
> Subject: what in the world is happening here?
>
> I'm really confused with Ivy's behaviour. I can't seem to get it to update
> everything. I publish several artifacts to the repository using:
>
> 	<publications>
> 		<artifact/>
> 		<artifact type="pom" ext="pom"/>
> 		<artifact type="config" ext="jar" e:classifier="config"/>
> 	</publications>
>
> This works fine and I get module-1.0-SNAPSHOT.jar, module-1.0-SNAPSHOT.pom and
> module-1.0-SNAPSHOT-config.jar in the repository.
>
> However, when I define my dependencies like so
>
> <dependency name="module" rev="latest.integration" conf="config->default"
> changing="true">
> 	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
> </dependency>
>
> Ivy never updates the config jar. I have used a sniffer and while Ivy gets the
> POM from the repository (which is Nexus) it never bothers to downloaded the
> updated module-1.0-SNAPSHOT-config.jar
>
> what could possible be going on here??
>
>
>
>



Re: what in the world is happening here?

Posted by Kent Rosenkoetter <kr...@cequint.com>.
For a dependency declaration, you only declare the dependency itself and
an optional configuration mapping.  Do not declare the artifacts of your
dependency.  And make sure that "default" matches a configuration name in
your module.

If you declare a module named "MyLib" with configurations "runtime" and
"build", then to depend on it you would need:
	<dependency name="MyLib" rev="latest.integration" conf="*->runtime"/>

The "*" matches configurations in the module that depends on MyLib.  The
"runtime" matches a configuration in MyLib itself.

Kent


On 8/22/11 9:47 AM, "teknokrat" <ig...@nomura.com> wrote:

>I'm really confused with Ivy's behaviour. I can't seem to get it to update
>everything. I publish several artifacts to the repository using:
>
>	<publications>
>		<artifact/>
>		<artifact type="pom" ext="pom"/>
>		<artifact type="config" ext="jar" e:classifier="config"/>
>	</publications>
>
>This works fine and I get module-1.0-SNAPSHOT.jar,
>module-1.0-SNAPSHOT.pom and
>module-1.0-SNAPSHOT-config.jar in the repository.
>
>However, when I define my dependencies like so
>
><dependency name="module" rev="latest.integration" conf="config->default"
>changing="true">
>	<artifact name="module" type="config" e:classifier="config" ext="jar"/>
></dependency>
>
>Ivy never updates the config jar. I have used a sniffer and while Ivy
>gets the
>POM from the repository (which is Nexus) it never bothers to downloaded
>the
>updated module-1.0-SNAPSHOT-config.jar
>
>what could possible be going on here??
>
>
>
>