Re: V2.x not usable next to V1.x

Mattias Jiderhamn <[email protected]> Fri, 18 May 2012 21:36:48 +0200
Newsgroups gmane.comp.java.jdom.general
Message-ID <[email protected]>
Disclaimer: I have only been using Maven for about 6 months. I have 
added stuff to a Nexus repo, but know nothing of Maven Central uploads.

Joe Bowbeer wrote:
 > If there is a problem with the way jdom2 was published to maven, this 
might
 > affect your stats?

Joe may have a point. In case your project has (transient) dependencies 
on JDOM 1, it means JDOM 2 cannot be added using Maven. (Instead, you 
may download the JAR from jdom.org and add to your Nexus repo with a 
modified artifactId.)


Blaming Maven for requiring unique artifact ids, is like blaming Java 
for requiring different package names to reuse the same class name 
(hence, org.jdom2). I cannot see how this is stupid - just a convention 
to be systematic. The fact that you may get it wrong if you do not 
understand the conventions or see the implications of the system does 
not change that.

See more below.

Rolf Lear wrote
> ... I get the
> impression that Maven developers expect the world to conform to them,
> rather than tolerating the heterogeneous we live in. It is "everyone 
> else's
> fault" if things don't work the maven way.....
As has been mentioned, Maven assumes convention over configuration. I 
agree it was awkward at first, but now I see benefits.

> 1. you say that the artifact does not need to be the same as the 'base
> name' of the jar, yet everything i have read suggests it does need to be
> the same
I think the point is, that non-Maven JARs do not have to have the same 
name as the non-Maven (jdom.org) ones.


> ... I recall that when I tried to upload maven bundles to
> sonatype, the jar name has to be of the specific form
> <artifact>-<version>-<subcomp>.jar, If your artifact is abc123 and the
> version is 1.2.3 then it expects abc123-1.2.3.jar,
> abc123-1.2.3-sources.jar, abc123-1.2.3-javadocs.jar, etc.
You may want to check if it is possible to override the filename of the 
JAR by also providing the POM (and have the repo generate the filename).


> 2. If it is possible to load jdom-2.0.2.jar in to the jdom2 artifact, I
> will consider it... but what about people who are already pulling 
> 2.0.0 and
> 2.0.1 from the jdom artifact? How will they know to 'move' if their
> dependencies are not going to move with the artifact....? If I can 
> keep the
> jdom-2.0.x.jar, I would also consider deploying to *both* jdom2 and jdom
> artifacts....
I don't have a good answer for this. I've run into this issue with other 
project, changing group id as well.

> 3. How do I 'notify' the 30k people a month using 1.1 that they should
> upgrade/change their artifact to jdom2?
On this mailing list + jdom.org...?

> 4. Maven provides no way to 'test' something... (at least not with the
> simple 'bundle' upload). How do I do a 'dry run'? I have already got the
> JDOM beta's in the jdom2 artifact because I needed to get some 'practice'
> in.....
Could you set up a local repo to test with...?

> The massive re-organization of the code would be a huge impact on the 
> version history would be a PITA for a start....
How come, when you're already on Git?


</Mattias>

_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/[email protected]