On Sat, Oct 16, 2010 at 10:52 AM, sebb <seb...@gmail.com> wrote: > > Why? I don't see the point. >
We had this discussion long ago. Let me try to summarize for you. Suppose Project X wants to use commons foo version 2. Suppose also that Project X uses Project Y as a dependency and Project Y uses commons foo version 1 ("jar hell"). Now, foo version 1 and 2 are binary incompatible. If we leave them with the same group/artifact and with different versions, then Maven will only allow foo version 2 on the classpath as a dependency because it is the most recent. So, the code in Project Y won't work. However, if foo version 2 changes its artifact id and changes its package name, the code in Project X can code against org.apache.commons.foo2 and the code in Project Y can code against org.apache.commons.foo and both will stay happy. Also, Maven will allow both on the classpath at the same time since they're not the same artifact id. Note: yes I know this problem goes away with OSGi, but not everyone is using OSGi, nor should we require them to do so. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org