Re: Bug#786895: lintian: incompatible-java-bytecode-format warning needs update for Java 1.7
Hi,
Markus Koschany wrote:
> I think it is time to adjust the lintian warning about
> "incompatible-java-bytecode-format". The current version of Lintian
> still warns about Java 1.7 bytecode, however Java 1.7 is the default
> in Jessie and it is reasonable to update the check now.
>
> It seems to be sufficient to change the value of
> "max-bytecode-version" in data/java/constants from 50 to 51.
There is a related bug report against lintian at
https://bugs.debian.org/783815 (Using oracle java 8 in a package
generate unknow-java-class-version).
I'm actually unsure about the semantics of max-bytecode-version.
Citing from my (still unanswered) mail to the above bug-report:
The code introduced in 2.5.23 may have an off-by-one error, but it
also may be on purpose (the changelog entry sys "Catch uses of Java8
byte code"):
if ( $mver <= $MAX_BYTECODE->value('min-bytecode-version') - 1
or $mver
>= $MAX_BYTECODE->value('max-bytecode-existing-version')) {
# First public major version was 45 (Java1), latest
# version is 52 (Java8).
tag 'unknown-java-class-version', $jar_file,
"($class -> $mver)";
The ">=" in there likely should be just a ">" if Java 8 byte code
(i.e. for use with openjdk-8 from experimental) is fine. Or am I
misunderstanding the semantics of max-bytecode-existing-version?
Regards, Axel
--
,''`. | Axel Beckert <abe@debian.org>, http://people.debian.org/~abe/
: :' : | Debian Developer, ftp.ch.debian.org Admin
`. `' | 4096R: 2517 B724 C5F6 CA99 5329 6E61 2FF9 CD59 6126 16B5
`- | 1024D: F067 EA27 26B9 C3FC 1486 202E C09E 1D89 9593 0EDE
Reply to: