Ivy problem publishing with a forced dependency version

View: New views
5 Messages — Rating Filter:   Alert me  

Ivy problem publishing with a forced dependency version

by Patrick Aikens :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm converting our projects at work to use Ivy.  We noticed that one
of the projects hasn't been updated to work with the breaking changes
in 1.2.9 of log4j and thus caused a runtime exception when we used our
module in other code. The conflict manager was evicting the version I
specified and using a newer version of log4j via some other transitive
dependency.  I decided to use the 'force="true"' option to force the
older version instead of letting it get evicted for a newer version.

Now, I have a problem when I try to publish... I get this error:
impossible to publish artifacts for myorg#mymod;working@paiken1-LT:
myorg#mymod;working@paiken1-LT: java.lang.RuntimeException: bad ivy
file in cache for myorg#mymod;working@paiken1-LT: please clean and
resolve again

Just for the record, I've blown away my ivy cache and even after it's
recreated during this compile phase, mymod is not in the cache at all
since it hasn't been published.  Removing the force="true" from the
log4j dependency also makes it work again.  Something tells me I'm
misunderstanding the mention of "cache" in the error message.

Contents of Ivy file follow:

<?xml version="1.0" ?>
<ivy-module version="1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
        <info organisation="myorg" module="mymod"/>
        <configurations>
            <include file="${root.build.dir}/ivy-configurations.xml"/>
        </configurations>
        <publications>
                <artifact conf="master"/>
        </publications>
        <dependencies>
                <dependency org="log4j" name="log4j" rev="${log4j.log4j.rev}"
force="true" conf="compile->default;runtime->default"/>
                <dependency org="xalan" name="xalan" rev="${xalan.xalan.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="xerces" name="xercesImpl"
rev="${xerces.xercesImpl.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="jdom" name="jdom" rev="${jdom.jdom.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="jakarta-regexp" name="jakarta-regexp"
rev="${jakarta-regexp.jakarta-regexp.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="oro" name="oro" rev="${oro.oro.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="junit" name="junit" rev="${junit.junit.rev}" conf="test->*"/>
                <dependency org="xalan" name="xalanj1compat"
rev="${xalan.xalanj1compat.rev}"
conf="compile->default;runtime->default"/>
                <dependency org="org.springframework" name="spring-beans"
rev="${org.springframework.spring.rev}"
conf="compile->default;runtime->default"/>
        </dependencies>
</ivy-module>


--
Emo Philips  - "I got some new underwear the other day. Well, new to me."

Re: Ivy problem publishing with a forced dependency version

by Patrick Aikens :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Does anybody have any info on this?  I can't get any farther in
converting our projects to use Ivy until I can find a resolution for
this.

On Thu, Jul 10, 2008 at 11:41 AM, Patrick Aikens <paikens@...> wrote:

> I'm converting our projects at work to use Ivy.  We noticed that one
> of the projects hasn't been updated to work with the breaking changes
> in 1.2.9 of log4j and thus caused a runtime exception when we used our
> module in other code. The conflict manager was evicting the version I
> specified and using a newer version of log4j via some other transitive
> dependency.  I decided to use the 'force="true"' option to force the
> older version instead of letting it get evicted for a newer version.
>
> Now, I have a problem when I try to publish... I get this error:
> impossible to publish artifacts for myorg#mymod;working@paiken1-LT:
> myorg#mymod;working@paiken1-LT: java.lang.RuntimeException: bad ivy
> file in cache for myorg#mymod;working@paiken1-LT: please clean and
> resolve again
>
> Just for the record, I've blown away my ivy cache and even after it's
> recreated during this compile phase, mymod is not in the cache at all
> since it hasn't been published.  Removing the force="true" from the
> log4j dependency also makes it work again.  Something tells me I'm
> misunderstanding the mention of "cache" in the error message.
>
> Contents of Ivy file follow:
>
> <?xml version="1.0" ?>
> <ivy-module version="1.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
>        <info organisation="myorg" module="mymod"/>
>        <configurations>
>            <include file="${root.build.dir}/ivy-configurations.xml"/>
>        </configurations>
>        <publications>
>                <artifact conf="master"/>
>        </publications>
>        <dependencies>
>                <dependency org="log4j" name="log4j" rev="${log4j.log4j.rev}"
> force="true" conf="compile->default;runtime->default"/>
>                <dependency org="xalan" name="xalan" rev="${xalan.xalan.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="xerces" name="xercesImpl"
> rev="${xerces.xercesImpl.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="jdom" name="jdom" rev="${jdom.jdom.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="jakarta-regexp" name="jakarta-regexp"
> rev="${jakarta-regexp.jakarta-regexp.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="oro" name="oro" rev="${oro.oro.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="junit" name="junit" rev="${junit.junit.rev}" conf="test->*"/>
>                <dependency org="xalan" name="xalanj1compat"
> rev="${xalan.xalanj1compat.rev}"
> conf="compile->default;runtime->default"/>
>                <dependency org="org.springframework" name="spring-beans"
> rev="${org.springframework.spring.rev}"
> conf="compile->default;runtime->default"/>
>        </dependencies>
> </ivy-module>
>
>
> --
> Emo Philips  - "I got some new underwear the other day. Well, new to me."
>



--
Yogi Berra  - "A nickel ain't worth a dime anymore."

Re: Ivy problem publishing with a forced dependency version

by Patrick Aikens :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Now, I'm seeing this constantly... I can blow away my cache folder
completely, but the ivy.xml that used to work no longer does (without
the force=true)... what causes this error?

On Tue, Jul 15, 2008 at 2:11 PM, Patrick Aikens <paikens@...> wrote:

> Does anybody have any info on this?  I can't get any farther in
> converting our projects to use Ivy until I can find a resolution for
> this.
>
> On Thu, Jul 10, 2008 at 11:41 AM, Patrick Aikens <paikens@...> wrote:
>> I'm converting our projects at work to use Ivy.  We noticed that one
>> of the projects hasn't been updated to work with the breaking changes
>> in 1.2.9 of log4j and thus caused a runtime exception when we used our
>> module in other code. The conflict manager was evicting the version I
>> specified and using a newer version of log4j via some other transitive
>> dependency.  I decided to use the 'force="true"' option to force the
>> older version instead of letting it get evicted for a newer version.
>>
>> Now, I have a problem when I try to publish... I get this error:
>> impossible to publish artifacts for myorg#mymod;working@paiken1-LT:
>> myorg#mymod;working@paiken1-LT: java.lang.RuntimeException: bad ivy
>> file in cache for myorg#mymod;working@paiken1-LT: please clean and
>> resolve again
>>
>> Just for the record, I've blown away my ivy cache and even after it's
>> recreated during this compile phase, mymod is not in the cache at all
>> since it hasn't been published.  Removing the force="true" from the
>> log4j dependency also makes it work again.  Something tells me I'm
>> misunderstanding the mention of "cache" in the error message.
>>
>> Contents of Ivy file follow:
>>
>> <?xml version="1.0" ?>
>> <ivy-module version="1.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
>>        <info organisation="myorg" module="mymod"/>
>>        <configurations>
>>            <include file="${root.build.dir}/ivy-configurations.xml"/>
>>        </configurations>
>>        <publications>
>>                <artifact conf="master"/>
>>        </publications>
>>        <dependencies>
>>                <dependency org="log4j" name="log4j" rev="${log4j.log4j.rev}"
>> force="true" conf="compile->default;runtime->default"/>
>>                <dependency org="xalan" name="xalan" rev="${xalan.xalan.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="xerces" name="xercesImpl"
>> rev="${xerces.xercesImpl.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="jdom" name="jdom" rev="${jdom.jdom.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="jakarta-regexp" name="jakarta-regexp"
>> rev="${jakarta-regexp.jakarta-regexp.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="oro" name="oro" rev="${oro.oro.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="junit" name="junit" rev="${junit.junit.rev}" conf="test->*"/>
>>                <dependency org="xalan" name="xalanj1compat"
>> rev="${xalan.xalanj1compat.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="org.springframework" name="spring-beans"
>> rev="${org.springframework.spring.rev}"
>> conf="compile->default;runtime->default"/>
>>        </dependencies>
>> </ivy-module>
>>
>>
>> --
>> Emo Philips  - "I got some new underwear the other day. Well, new to me."
>>
>
>
>
> --
> Yogi Berra  - "A nickel ain't worth a dime anymore."
>



--
Vince Lombardi  - "Winning is habit. Unfortunately, so is losing."

Parent Message unknown Re: Ivy problem publishing with a forced dependency version

by Maarten Coene :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Which version of Ivy do you use?
Could you also send us the ivy.xml file with the exact revisions and configurations in it?

regards,
Maarten




----- Original Message ----
From: Patrick Aikens <paikens@...>
To: ivy-user@...
Sent: Tuesday, July 15, 2008 9:15:56 PM
Subject: Re: Ivy problem publishing with a forced dependency version

Now, I'm seeing this constantly... I can blow away my cache folder
completely, but the ivy.xml that used to work no longer does (without
the force=true)... what causes this error?

On Tue, Jul 15, 2008 at 2:11 PM, Patrick Aikens <paikens@...> wrote:

> Does anybody have any info on this?  I can't get any farther in
> converting our projects to use Ivy until I can find a resolution for
> this.
>
> On Thu, Jul 10, 2008 at 11:41 AM, Patrick Aikens <paikens@...> wrote:
>> I'm converting our projects at work to use Ivy.  We noticed that one
>> of the projects hasn't been updated to work with the breaking changes
>> in 1.2.9 of log4j and thus caused a runtime exception when we used our
>> module in other code. The conflict manager was evicting the version I
>> specified and using a newer version of log4j via some other transitive
>> dependency.  I decided to use the 'force="true"' option to force the
>> older version instead of letting it get evicted for a newer version.
>>
>> Now, I have a problem when I try to publish... I get this error:
>> impossible to publish artifacts for myorg#mymod;working@paiken1-LT:
>> myorg#mymod;working@paiken1-LT: java.lang.RuntimeException: bad ivy
>> file in cache for myorg#mymod;working@paiken1-LT: please clean and
>> resolve again
>>
>> Just for the record, I've blown away my ivy cache and even after it's
>> recreated during this compile phase, mymod is not in the cache at all
>> since it hasn't been published.  Removing the force="true" from the
>> log4j dependency also makes it work again.  Something tells me I'm
>> misunderstanding the mention of "cache" in the error message.
>>
>> Contents of Ivy file follow:
>>
>> <?xml version="1.0" ?>
>> <ivy-module version="1.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
>>        <info organisation="myorg" module="mymod"/>
>>        <configurations>
>>            <include file="${root.build.dir}/ivy-configurations.xml"/>
>>        </configurations>
>>        <publications>
>>                <artifact conf="master"/>
>>        </publications>
>>        <dependencies>
>>                <dependency org="log4j" name="log4j" rev="${log4j.log4j.rev}"
>> force="true" conf="compile->default;runtime->default"/>
>>                <dependency org="xalan" name="xalan" rev="${xalan.xalan.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="xerces" name="xercesImpl"
>> rev="${xerces.xercesImpl.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="jdom" name="jdom" rev="${jdom.jdom.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="jakarta-regexp" name="jakarta-regexp"
>> rev="${jakarta-regexp.jakarta-regexp.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="oro" name="oro" rev="${oro.oro.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="junit" name="junit" rev="${junit.junit.rev}" conf="test->*"/>
>>                <dependency org="xalan" name="xalanj1compat"
>> rev="${xalan.xalanj1compat.rev}"
>> conf="compile->default;runtime->default"/>
>>                <dependency org="org.springframework" name="spring-beans"
>> rev="${org.springframework.spring.rev}"
>> conf="compile->default;runtime->default"/>
>>        </dependencies>
>> </ivy-module>
>>
>>
>> --
>> Emo Philips  - "I got some new underwear the other day. Well, new to me."
>>
>
>
>
> --
> Yogi Berra  - "A nickel ain't worth a dime anymore."
>



--
Vince Lombardi  - "Winning is habit. Unfortunately, so is losing."



     

Re: Ivy problem publishing with a forced dependency version

by Patrick Aikens :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

*sigh* Never mind.  Someone checked in a breaking change in the
configurations include file, and I failed to check for that
possibility.  My fault.  I'm going to hide in shame for a while.

On Tue, Jul 15, 2008 at 3:15 PM, Patrick Aikens <paikens@...> wrote:

> Now, I'm seeing this constantly... I can blow away my cache folder
> completely, but the ivy.xml that used to work no longer does (without
> the force=true)... what causes this error?
>
> On Tue, Jul 15, 2008 at 2:11 PM, Patrick Aikens <paikens@...> wrote:
>> Does anybody have any info on this?  I can't get any farther in
>> converting our projects to use Ivy until I can find a resolution for
>> this.
>>
>> On Thu, Jul 10, 2008 at 11:41 AM, Patrick Aikens <paikens@...> wrote:
>>> I'm converting our projects at work to use Ivy.  We noticed that one
>>> of the projects hasn't been updated to work with the breaking changes
>>> in 1.2.9 of log4j and thus caused a runtime exception when we used our
>>> module in other code. The conflict manager was evicting the version I
>>> specified and using a newer version of log4j via some other transitive
>>> dependency.  I decided to use the 'force="true"' option to force the
>>> older version instead of letting it get evicted for a newer version.
>>>
>>> Now, I have a problem when I try to publish... I get this error:
>>> impossible to publish artifacts for myorg#mymod;working@paiken1-LT:
>>> myorg#mymod;working@paiken1-LT: java.lang.RuntimeException: bad ivy
>>> file in cache for myorg#mymod;working@paiken1-LT: please clean and
>>> resolve again
>>>
>>> Just for the record, I've blown away my ivy cache and even after it's
>>> recreated during this compile phase, mymod is not in the cache at all
>>> since it hasn't been published.  Removing the force="true" from the
>>> log4j dependency also makes it work again.  Something tells me I'm
>>> misunderstanding the mention of "cache" in the error message.
>>>
>>> Contents of Ivy file follow:
>>>
>>> <?xml version="1.0" ?>
>>> <ivy-module version="1.0"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>> xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
>>>        <info organisation="myorg" module="mymod"/>
>>>        <configurations>
>>>            <include file="${root.build.dir}/ivy-configurations.xml"/>
>>>        </configurations>
>>>        <publications>
>>>                <artifact conf="master"/>
>>>        </publications>
>>>        <dependencies>
>>>                <dependency org="log4j" name="log4j" rev="${log4j.log4j.rev}"
>>> force="true" conf="compile->default;runtime->default"/>
>>>                <dependency org="xalan" name="xalan" rev="${xalan.xalan.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="xerces" name="xercesImpl"
>>> rev="${xerces.xercesImpl.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="jdom" name="jdom" rev="${jdom.jdom.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="jakarta-regexp" name="jakarta-regexp"
>>> rev="${jakarta-regexp.jakarta-regexp.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="oro" name="oro" rev="${oro.oro.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="junit" name="junit" rev="${junit.junit.rev}" conf="test->*"/>
>>>                <dependency org="xalan" name="xalanj1compat"
>>> rev="${xalan.xalanj1compat.rev}"
>>> conf="compile->default;runtime->default"/>
>>>                <dependency org="org.springframework" name="spring-beans"
>>> rev="${org.springframework.spring.rev}"
>>> conf="compile->default;runtime->default"/>
>>>        </dependencies>
>>> </ivy-module>
>>>
>>>
>>> --
>>> Emo Philips  - "I got some new underwear the other day. Well, new to me."
>>>
>>
>>
>>
>> --
>> Yogi Berra  - "A nickel ain't worth a dime anymore."
>>
>
>
>
> --
> Vince Lombardi  - "Winning is habit. Unfortunately, so is losing."
>



--
Bill Cosby  - "Advertising is the most fun you can have with your clothes on."
LightInTheBox - Buy quality products at wholesale price