[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Java policy and ABI changes



Marcus Better writes:
 > Andrew Haley wrote:
 > > In my opinion, Java libraries without stable interfaces shouldn't be
 > > deployed in free OSes.
 > 
 > That's a nice goal but unfortunately the world is not so perfect,
 > because users occasionally require new software with shiny new
 > bells and whistles.  Besides we cannot control upstream and prevent
 > them from breaking ABI. As a distribution we need to find a balance
 > between features and stability.
 > 
 > I think the Java policy needs to be tweaked to allow for multiple
 > versions of the same library. The problem is much easier than for C
 > libraries, since we don't have a dynamic linker, so the user is
 > responsible for adding the correct library to the classpath. We
 > just need to make sure the different versions don't conflict, which
 > usually means that both of them cannot install the generic symlink
 > "/usr/share/java/foo.jar".

As I pointed out before, that doesn't work for Java in the general
case because a single running VM can load multiple libraries, which
come from different sources, which may need different versions of the
same library.  You're into dependency hell very quickly.

 > It seems it would suffice to have the symlink created by postinst,
 > which would point it at the latest installed version (similar to
 > ldconfig).
 > 
 > Note that I'm not suggesting we should package several versions of
 > libraries. That should be avoided, but when necessary there should
 > be a way to do it.

I'm not going to argue with that.  Sometimes everybody has to do bad
things.  :-)

Andrew.

-- 
Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, UK
Registered in England and Wales No. 3798903



Reply to: