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: