JDK-8151901 : test/tools/pack200/Pack200Test fails on verifying native unpacked JAR
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util.jar
  • Affected Version: 9
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2016-03-15
  • Updated: 2016-10-11
  • Resolved: 2016-09-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b136Fixed
Related Reports
Duplicate :  
Duplicate :  
Description
Pack200Test fails when running this command in jake:
    java -cp pack200-verifier.jar sun.tools.pack.verify.Main java-rt.jar native-rt.jar -O -b

Error: File:jdk.scripting.nashorn/jdk/nashorn/internal/objects/NativeArray$Prototype.class differs, use a diff util for further diagnostics
Comments
http://cr.openjdk.java.net/~ksrini/8151901/
17-03-2016

Two issues involved: 1. The InnerClasses UTF8 entry in the Class ConstantPool is not purged, the cprefs must be recomputed. 2. Extraneous BSM Entry see JDK-8062335 Both of the above needs to be fixed.
17-03-2016

This is not a regression in Jigsaw or Jake!. This seems to be an inherent bug in the java unpacker, tickled by the new set of classes being produced by ASM and introduced in Jigsaw images. The java (reference) unpacker produces an extraneous InnerClasses UTF8 entry in the constant pool, while the native unpacker correctly omits it, thus the bit compare fails between the two output files. The extra entry is completely benign and will not cause problems, *however*, the java unpacker is the reference implementation and should exhibit correct behavior.
16-03-2016