On Fri, Oct 31, 2014 at 11:43 AM, Deepak Bhole <dbhole(a)redhat.com> wrote:
* Christopher <ctubbsii-fedora(a)apache.org> [2014-10-31 11:37]:
> On Fri, Oct 31, 2014 at 5:35 AM, Mat Booth <fedora(a)matbooth.co.uk>
wrote:
>
> On 31 October 2014 08:18, Max Rydahl Andersen <manderse(a)redhat.com>
wrote:
>
>
> Fedora 20 used to have 3 different Java versions (5,
7, 8).
>
>
> ok, why no Java 6 ?
>
>
> Besides many technical reason the biggest one is
non-technical in
> my eyes - no one volunteered to do it. You know it's always a
> matter of "who will do the work?". I'm pretty sure that
if
someone
> jumps in and say "Hey, I'll maintain Java 6, fix
problems/adopt
> Java 6 to changes in the OS if neeeded, help strengthen the
> switching between JREs, go through the Java projects(shipped
in
> Fedora) and help them properly set their targets in build
scripts
> so builds properly work on Java 6 and etc" there will be no
> objection to having Java 6. :)
>
>
> Fair enough.
>
>
> OpenJDK 7
> was removed from F21 because its support will end
before
> F21 EOL and
> we
> don't want to ship software not supported by
upstream.
>
>
> So for users most stable thing is to use Oracle JDK
builds
> instead which
> are and will stay available ?
>
>
> Users can still try to use it but it's something that they
have to
> do on their own - download, extract, set PATH, etc. Just
like on
> every platform with Oracle JVM.
>
>
> Yeah, this is similar experience for developers on all other
platforms
> so its expected/assumed.
>
>
> No separate repo with "binaries that is currently
supported but
> will not
> stay supported for all of fedora 21 lifetime" ?
>
>
> 1. Fedora can not legally redistribute Oracle JDK.
>
>
> I know - hence why I would think having a openjdk 7 build would
make
> sense.
>
>
> 2. Fedora can not distribute something that Fedora
developers can
> not support if there is a problem in it (as it is with
Oracle JDK).
>
>
> so *any* package that is known to be marked as EOL sometime in
the
> future before the upcoming Fedora EOL's gets removed from that
future
> Fedora release ? Even that Java 7 is still the most used and
targeted
> Java version ?
>
>
>
> Maybe I misunderstand the use-case, but your projects can still
target Java
> 7 even if Eclipse is running on Java 8.
>
>
>
> That's not entirely true. This only works if a true JDK7 exists on the
system.
> While newer JDKs are able to target older runtimes, there are cases
where one
> can introduce source-incompatible changes that work in a newer JDK, but
not in
> an older JDK. This matters for collaborating on projects where some team
> members are not using the newer JDK to target the older runtime. For
instance,
> this happened with JDK7/JDK6 on my team... JDK7 allows certain use of
generics
> syntax that properly compiles to JDK6 target, and validates in Eclipse
as JDK6
> source-compatible, but the actual JDK6 compiler treats as an error. I
had to
> abandon my use of Fedora 20 as a development environment for our
project, and
> revert to CentOS6 in order to guarantee I wasn't introducing source that
was
> incompatible with JDK6. Not making older JDKs (even stale ones)
available is
> likely to discourage Java developers from using Fedora as a development
> platform.
>
This is a bug -- did you file it with us? If so, what was the
conclusion? If -target 1.6 was specified, it should have been able to
run it on 6 without issues and any problems encountered are certainly
bugs.
There is no issue with -target 1.6; the issue was with strict source
compatibility with 1.6. I can't recall the specifics (it had something to
do with generic type checking, because 1.7's javac can make better
inferences), but that's outside the scope of this issue. The main point, as
it relates here, is that there may not be strict compatibility between
javac provided by different JDKs, even if javac makes a best effort attempt
to parse older source. A more obvious problem is the lack of bootstrap
classpaths for older -source/-target, which is known to be likely to create
compiled code that is not capable of running in an older JVM (this doesn't
matter if you're developing for the latest Fedora, but it matters if you're
using the latest Fedora to develop for other platforms, like RHEL or
Android).
Deepak
> Personally, unlike the original poster, I don't care which JVM Eclipse is
> running on, itself (OpenJDK 8, or whatever is latest, works for me).
But, I do
> care about which JDKs are available on the system that Eclipse can
launch to
> build projects, because that affects whether I can use Fedora as my
development
> platform on team projects where some team members are using older JDKs
(which
> should be fine, until the project bumps its minimum JVM dependency).
>
> --
> java-devel mailing list
> java-devel(a)lists.fedoraproject.org
>
https://admin.fedoraproject.org/mailman/listinfo/java-devel