From: Andreas Leitgeb on
Where could I find some table, giving overview of which
version of javac produced which major/minor class-version?

e.g.: (checking all 'javac's available on a particular machine)
1.4.2_16 produces 46/0
1.5.0_09 produces 49/0
1.6.0_17 produces 50/0

Seemingly there were a few steps between 1.4.2_16 and 1.5.0_09
and I'd like to know which range of versions produced 47 and 48.
(without test-installing every old jdk that
(I don't need versions older than 46/0 for now.)

PS: I know these versions are old - even up to the 1.6 one used
here.
From: Paul Cager on
On Jun 17, 1:40 pm, Andreas Leitgeb <a...(a)gamma.logic.tuwien.ac.at>
wrote:
> Where could I find some table, giving overview of which
> version of javac produced which major/minor class-version?
>
> e.g.: (checking all 'javac's available on a particular machine)
>   1.4.2_16  produces 46/0
>   1.5.0_09  produces 49/0
>   1.6.0_17  produces 50/0
>
> Seemingly there were a few steps between 1.4.2_16 and 1.5.0_09
> and I'd like to know which range of versions produced 47 and 48.
> (without test-installing every old jdk that
> (I don't need versions older than 46/0 for now.)
>
> PS: I know these versions are old - even up to the 1.6 one used
>     here.

I believe it is:

major minor JDK
46 0 1.2
47 0 1.3
48 0 1.4
49 0 1.5
50 0 1.6

But don't forget that the 1.4 compiler generated 1.2 compatible
classfiles by default (http://java.sun.com/j2se/1.4.2/docs/tooldocs/
windows/javac.html). Therefore your classfiles generated by 1.4 javac
have version 46 (1.2 format)
From: Andreas Leitgeb on
Paul Cager <paul.cager(a)googlemail.com> wrote:
> On Jun 17, 1:40 pm, Andreas Leitgeb <a...(a)gamma.logic.tuwien.ac.at> wrote:
>> Where could I find some table, giving overview of which
>> version of javac produced which major/minor class-version?
>
> I believe it is:
>
> major minor JDK
> 46 0 1.2
> 47 0 1.3
> 48 0 1.4
> 49 0 1.5
> 50 0 1.6
>
> But don't forget that the 1.4 compiler generated 1.2 compatible
> classfiles by default (http://java.sun.com/j2se/1.4.2/docs/tooldocs/
> windows/javac.html). Therefore your classfiles generated by 1.4 javac
> have version 46 (1.2 format)

Ah, thanks a lot! That was the crucial detail that I had forgotten...
It all makes sense now.

From: Roedy Green on
On 17 Jun 2010 12:40:17 GMT, Andreas Leitgeb
<avl(a)gamma.logic.tuwien.ac.at> wrote, quoted or indirectly quoted
someone who said :

>version of javac produced which major/minor class-version?
>
>e.g.: (checking all 'javac's available on a particular machine)
> 1.4.2_16 produces 46/0
> 1.5.0_09 produces 49/0
> 1.6.0_17 produces 50/0

see http://mindprod.com/products1.html#JARCHECK
--
Roedy Green Canadian Mind Products
http://mindprod.com

There is no harm in being sometimes wrong especially if one is promptly found out.
~ John Maynard Keynes (born: 1883-06-05 died: 1946-04-21 at age: 62)
From: Arne Vajhøj on
On 17-06-2010 08:40, Andreas Leitgeb wrote:
> Where could I find some table, giving overview of which
> version of javac produced which major/minor class-version?
>
> e.g.: (checking all 'javac's available on a particular machine)
> 1.4.2_16 produces 46/0
> 1.5.0_09 produces 49/0
> 1.6.0_17 produces 50/0
>
> Seemingly there were a few steps between 1.4.2_16 and 1.5.0_09
> and I'd like to know which range of versions produced 47 and 48.
> (without test-installing every old jdk that
> (I don't need versions older than 46/0 for now.)

http://en.wikipedia.org/wiki/Class_file has a list.

incl. a link to
http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html#75883
so the info is available.

As already noted by others then the 1.4.2 number you got
must be due to -target.

Arne