On Oct 16, 2010, at 7:59, "James Carman" <[email protected]> wrote:
> On Sat, Oct 16, 2010 at 10:52 AM, sebb <[email protected]> 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. > Yes, please don't force osgi on us all:) Gary > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
