[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: java bytecode / java runtime version mismatch

On Tue Oct 28 09:25, Matthias Klose wrote:
> I filed bug reports for packages building with openjdk-6 or cacao-oj6,
> producing java bytecode for version 50, and which still depend on
> java-runtime5, or earlier (attached at the end).

(minor thread hijacking)

I've just uploaded a version of javahelper to experimental
(0.17.experimental1) which uses the class version to work  out the
correct alternate depends. If you run 'jh_depends -j' after dh_install
it will inspect all your jar files and add the correct default-jre | ...
line to the substvars as ${java:Depends}. (there are other options for
more complex scenarios and it does other things too)

That version uses javap -verbose, which is rather slow, other
suggestions welcome. It uses the following table:

highest version in the package => depends line

50 => java-runtime6
49 => java-runtime6 | java-runtime5
48 => java-runtime6 | java-runtime5 | java-runtime2
<48 => java-runtime6 | java-runtime5 | java-runtime2 | java-runtime

Of course, this doesn't catch a program compiled at 49 which depends on
a library compiled at 50, since the library doesn't keep depends
information, but it's a good first start.



Matthew Johnson

Attachment: signature.asc
Description: Digital signature

Reply to: