Gentoo Archives: gentoo-java

From: Joshua Nichols <nichoj@g.o>
To: gentoo-java@l.g.o
Subject: Re: [gentoo-java] Java installation handling not acceptable
Date: Mon, 31 Jul 2006 19:53:18
Message-Id: 44CE5F6A.5000400@gentoo.org
In Reply to: [gentoo-java] Java installation handling not acceptable by Daniel
1 Daniel wrote:
2 > Hi,
3 > the installation of Java on Gentoo is the hell on earth!
4 >
5 I'm sure lots of people would disagree. In fact, I do hear fairly often
6 that our support of Java very good.
7 > - the installation is non transparent
8 >
9 Care to elaborate? If you emerge java packages, things should just work,
10 ie the appropriate JDK will be pulled for building.
11 > - the java-"help"-utils (java-config, java-config-wrapper) are not acceptable,
12 > because you don't really need them
13 >
14 How are they not acceptable? They are absolutely necessary actually, as
15 they are used for configuring and building Java on Gentoo
16 > - the whole solution of installing more than one jdk is bumptious - so not
17 > easy
18 > handable
19 >
20 I... really don't get what you saying. According to the handy
21 dictionary.reference.com site, bumptious means 'Crudely or loudly
22 assertive; pushy.' I don't really how supporting multiple JDKs is pushy
23 or supportive. It just offers a lot more flexibility. In particular, it
24 gives a lot of power when it come time for a new Java release, such that
25 we can use the stable and widely used version, while all the issues with
26 various packages are being worked out with the new version.
27 > This meens that it takes long time to install java and that you need to do
28 > some
29 > terrible thinks (e.g. unmasking some packages ... see
30 > http://www.gentoo.org/proj/en/java/java-upgrade.xml).
31 >
32 Terrible thinks? It is a new system for handling Java.... so of course
33 it needs to be in testing keywords. Or perhaps would you prefer it were
34 marked stable and then have all sorts of fun breakages for our stable
35 packages? No one forces you to unmask anything. Most times people using
36 stable keywords run into the new Java system because they decided to
37 package.unmask Java 1.5. (And please note, there is a difference between
38 using testing keywords, ie ~x86, and using stuff in package.mask... the
39 latter are known to cause problems or are undergoing heavy testing)
40 > This is not the way gentoo should go because this is to heavy for the user
41 > (that mostly just wants to install a jdk :) )!
42 >
43 If you don't have anything Java related installed, you can just emerge
44 the JDK. If you do have Java stuff installed, chances are you already
45 have one installed, and nothing is stopping you from emerging a
46 different one.
47 > So I have collected some points _we_ should think about:
48 > - why is jdk-1.5 still under development?
49 >
50 http://www.gentoo.org/proj/en/java/tiger-faq.xml should spell out some
51 of it. And I'm not sure what you mean by under development. I presume
52 you mean testing keywords? If so, this is standard policy, because it
53 1.5 has only recently come out of package.mask.
54 > - is it really necessary to install an jdk-1.4 and jdk-1.5? - if yes, why you
55 > don't need to install jdk-1.3?
56 >
57 Yes, it REALLY is necessary. First off, some packages are known to break
58 with Java 1.5. These will eventually can be patched. Second, every
59 package not using the new Java system needs to be built with Java 1.4 to
60 avoid the problems mentioned in the FAQ. It isn't necessary to install
61 1.3 because apparently, everything works with Java 1.4 that worked with
62 Java 1.3.
63 > - gentoo should never make a difference between jdk 1.4 and 1.5
64 >
65 Um... no. There does need to be a difference. I'm going to assume that
66 you just aren't familar enough with the differences between the two.
67 Just a few points:
68
69 * There is a different version of bytecode between major revisions of
70 JDKs, ie from 1.3 to 1.4, 1.4 to 1.5. Bytecode is forward compatible (ie
71 use 1.4 bytecode in 1.5 JRE), but not backward compatible.
72 * There is a new keyword, enum. Therefore, code using enum as a variable
73 code fails to compile
74 * Java 1.5 has new APIs for XML at least. It introduces new abstract
75 methods on some abstract classes and interfaces. The result is that when
76 classes fail to compile which use these abstract classes and interfaces,
77 and haven't specifically update to support the new API
78 > - java-config should just generate some environment files to set a special vm
79 >
80 What's a special VM?
81 > - if an ebuild requires a special vm (why ever, because the api of the jdk is
82 > compatible in most points) it should gnerate a warning, that the vm should be
83 > set to 1.x
84 >
85 See my previous points about compatibility.
86 > - it is the problem of the user if there are two java applications which need
87 > different vms (this problem is much easier to solve than installing java ;)).
88 >
89 >
90 The new Java system actually handles this. We basically create
91 'launchers' for this, which read information about the packages it
92 needs, and figures out if it can run in the current VM. If it doesn't,
93 it will switch to one.
94 > I hope you will not understand this bug as an act of aggression - it should
95 > just help Gentoo.
96 >
97 I hope you understand that it is easy to misunderstand comments to the
98 effect of 'Java on Gentoo being hell on earth' as being aggressive.
99
100 --
101 Joshua Nichols
102 Gentoo/Java - Project Lead
103
104 --
105 gentoo-java@g.o mailing list

Replies

Subject Author
[gentoo-java] unsubscribe Ezio Bernaudo <ezio.bernaudo@××××××××××.it>