* Andy Grimm <agrimm(a)gmail.com> [2011-08-26 10:18]:
> On Wed, Aug 3, 2011 at 6:00 PM, Deepak Bhole <dbhole(a)redhat.com> wrote:
> > * Douglas Myers–Turnbull <dmyersturnbull(a)gmail.com> [2011-07-25 20:53]:
> >> > I was planning to do this myself .. glad you started it :) I can take
> >> > over the Feature and doing all the work if you're fine with it...
> >> Please do!
> >> The only work I've done (literally) is on the feature page, but feel
> >> free let me know if you need anything from me.
> > Hi Douglas,
> > Thank you once again for creating the page. I have started updating it
> > and will add docs and other links tomorrow:
> > https://fedoraproject.org/wiki/Features/Java7
> > For anyone and everyone interested, a Java 7 build is now available in
> > the Fedora 16. I will build for rawhide in the coming days as well:
> > http://koji.fedoraproject.org/koji/buildinfo?buildID=257034
> > Cheers,
> > Deepak
> After some discussion on #fedora-java over the past 24 hours, I was
> asked to continue the discussion here regarding the implications of
> openjdk 6 and 7 coexisting in F16. Right now, java packages are being
> built for F16 using openjdk 7, and if they are built without
> "target=1.6", they will fail to load under openjdk 6. (One simple
> example of this is xalan, see
). Some possible
> solutions proposed over IRC:
> 1) Blacklist openjdk 7 from build roots for f16 -- this means that it
> doesn't get tested very well, though.
This would only be a short term solution. As soon as a package that needs
Java 7 is added/updated, it will require OpenJDK7 to be removed from the
> 2) Ensure all java packages use target=1.6 -- there's no standard way
> to do this across ant, mvn, javac, etc. though. You could check for
> 1.7 bytecode at the end of a build, but packages would still need to
> be individually fixed.
Agreed. This would be too tedious.
> 3) Drop openjdk 6 from F16 entirely
I think this is the best, but unfortunately not easily doable at the
moment. Alex (akurtakov) has been working on removing 1.6.0 dependencies
and has encountered cases (e.g. tomcat5) where it is not easily possible
due to interfaces having changed in Java 7.
Regardless though, we need to make all packages build with 1.7 because
as more packages build with 1.7, packages that require 1.6 explicitly
will fail to build as the 1.6 javac won't be able to load 1.7 compiled
Dropping 6 is also problematic because we don't have a TCK for 7 yet,
which means 6 is the only TCK tested version in Fedora atm.
Nonetheless, I think #3 is the only realistic option that will be most
Andrew Haley and I just had a chat about this.
We both agree that weaning off the 1.6 dependency is the best long-term
solution. We essentially want it so that nothing in Fedora needs 1.6.
That said, we will continue to ship 1.6 since 3rd party apps may need
it. We will however remove the alternatives for 1.6, so using them will
require the user to manually set JAVA_HOME to
/usr/lib/jvm/java-1.6.0..../ and call the java binary from that dir.
This will prevent someone from accidentally switching the system
alternative to 1.6 and having (1.7 built) apps fail.
Are there any major objections to the above?
In the mean time, I am going to start building all java packages
currently in F16 against 1.7 only to see the scope of changes that will
> It was also mentioned that Fedora is beginning to include some
> packages which build much more cleanly on openjdk 7 than they do on 6,
> so enforcing openjdk 6-only build roots might break some things.
> Other suggestions are welcome. I don't have a strong opinion about
> this, just a strong interest in having a sane Java environment in F16.
devel mailing list