commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: svn commit: r1079608 - /commons/proper/codec/trunk/pom.xml
Date Wed, 09 Mar 2011 03:55:46 GMT
On 9 March 2011 02:46, Gary Gregory <garydgregory@gmail.com> wrote:
>
>
> On Tue, Mar 8, 2011 at 9:34 PM, sebb <sebbaz@gmail.com> wrote:
>>
>> On 9 March 2011 02:31, Gary Gregory <garydgregory@gmail.com> wrote:
>> > Does having the old style of groupId mean that deploying will not work,
>> > per
>> > http://wiki.apache.org/commons/UsingNexus#top
>> >
>> > "All Commons components that use the org.apache.commons groupId are
>> > already
>> > set up to use Nexus."
>> >
>> > And if not... what happens?
>>
>> Nexus won't let you upload.
>>
>> Two options:
>> - use the old methods. These can work, but are error prone.
>> - use JIRA to request a Nexus entry for the project.
>>
>
> Ug, I cannot change the groupId because I cannot change the package. Codec
> 1.5 fixes some long standing bugs introduced in 1.4.
>
> If I change the groupId... Are we talking end of the Maven world or wasted
> memory?

Neither.

> I do not understand enough about the Maven guts to grok the consequences...

Maven uses the groupId:artifactId tuple to decide if two components
are the same.

So if VFS depends on c-logging:1 and NET:2 and NET:2 uses
c-logging:2.1 Maven will add only logging:2.1 to the classpath.

But if c-logging:2.1 has a different groupId - e.g. o.a.c-logging -
from c-logging:1, both will end up on the classpath. Not good.

Now there is a relocation POM which is supposed to tell Maven that
c-logging is the same as o.a.c-logging.
However, the relocation is stored only under original groupId, and
AFAIK only on the latest version.

For the relocation to work, Maven would have to read all the poms.
In the example above, it would have to start with c-logging:1, and
find the relocation pom in (say) c-logging:1.13.

I tried to find out if Maven does this, but noone on the Maven list
could say for sure.
I suspect not, because local workspaces don't have poms apart from the
ones that have been directly referenced.
The info needs to be in the local workspace otherwise offline mode won't work.

I have not found time to test how /if it works. I think this will
require a released component with a relocation pom, plus several dummy
projects that use versions either side of the relocation. Then a test
to show the classpath. Then delete the local copy of the relocation
pom and see if Maven finds it.

The same considerations apply to changing the artifactId.


> Thanks in advance for any clarification.
>
> Gary
>
>>
>> > Gary
>> >
>> > On Tue, Mar 8, 2011 at 9:28 PM, Gary Gregory <garydgregory@gmail.com>
>> > wrote:
>> >>
>> >> Reverting and will do for 2.0.
>> >>
>> >> Gary
>> >>
>> >> On Tue, Mar 8, 2011 at 8:00 PM, sebb <sebbaz@gmail.com> wrote:
>> >>>
>> >>> On 9 March 2011 00:02,  <ggregory@apache.org> wrote:
>> >>> > Author: ggregory
>> >>> > Date: Wed Mar  9 00:02:12 2011
>> >>> > New Revision: 1079608
>> >>> >
>> >>> > URL: http://svn.apache.org/viewvc?rev=1079608&view=rev
>> >>> > Log:
>> >>> > Use org.apache.commons groupId
>> >>>
>> >>> If you change the groupId you'll probably need to change the package
>> >>> name as well ..
>> >>>
>> >>> Otherwise Maven can add two copies of the jar to the classpath, which
>> >>> is not good when there are two copies of the same classes.
>> >>>
>> >>> > Modified:
>> >>> >    commons/proper/codec/trunk/pom.xml
>> >>> >
>> >>> > Modified: commons/proper/codec/trunk/pom.xml
>> >>> > URL:
>> >>> >
>> >>> > http://svn.apache.org/viewvc/commons/proper/codec/trunk/pom.xml?rev=1079608&r1=1079607&r2=1079608&view=diff
>> >>> >
>> >>> >
>> >>> > ==============================================================================
>> >>> > --- commons/proper/codec/trunk/pom.xml (original)
>> >>> > +++ commons/proper/codec/trunk/pom.xml Wed Mar  9 00:02:12 2011
>> >>> > @@ -25,7 +25,7 @@
>> >>> >     <version>18</version>
>> >>> >   </parent>
>> >>> >   <modelVersion>4.0.0</modelVersion>
>> >>> > -  <groupId>commons-codec</groupId>
>> >>> > +  <groupId>org.apache.commons</groupId>
>> >>> >   <artifactId>commons-codec</artifactId>
>> >>> >   <version>1.5-SNAPSHOT</version>
>> >>> >   <name>Commons Codec</name>
>> >>> >
>> >>> >
>> >>> >
>> >>>
>> >>> ---------------------------------------------------------------------
>> >>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>> >>> For additional commands, e-mail: dev-help@commons.apache.org
>> >>>
>> >>
>> >>
>> >>
>> >> --
>> >> Thank you,
>> >> Gary
>> >>
>> >> http://garygregory.wordpress.com/
>> >> http://garygregory.com/
>> >> http://people.apache.org/~ggregory/
>> >> http://twitter.com/GaryGregory
>> >
>> >
>> >
>> > --
>> > Thank you,
>> > Gary
>> >
>> > http://garygregory.wordpress.com/
>> > http://garygregory.com/
>> > http://people.apache.org/~ggregory/
>> > http://twitter.com/GaryGregory
>> >
>
>
>
> --
> Thank you,
> Gary
>
> http://garygregory.wordpress.com/
> http://garygregory.com/
> http://people.apache.org/~ggregory/
> http://twitter.com/GaryGregory
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Mime
View raw message