JDK-6639631 : Eliminate redundant 7-Zip native lib while maintaining development convenience
  • Type: Bug
  • Component: deploy
  • Sub-Component: deployment_toolkit
  • Affected Version: 6u10
  • Priority: P3
  • Status: Closed
  • Resolution: Won't Fix
  • OS: windows
  • CPU: generic
  • Submitted: 2007-12-10
  • Updated: 2011-01-28
  • Resolved: 2011-01-28
Related Reports
Relates :  
Description
Between the 1st and 2nd putbacks for CR 6601859 it was discovered that additional action is needeeed to make the MoveFile.idt change effective in moving the 7-Zip SDK LZMA native library lzma.dll to a place where the Java Kernel core libraries can access it. At the same time, numerious test scenarios involving use of the j2re-image-kernel directory, running the JK .msi directly, and running the JK online installer make it clear that it's easy to be frustrated by failures stemmming from lack manual setup of the native library location.
After finding/fixing the problem preventing the MoveFile action from working  a strategy needs to be used to prevent developers wasting time. Here's an initial proposal:
   1) After a build end up with lzma.dll in $OUTPUTDIR/lib/deploy and
       $OUTPUTDIR/j2re-image-kernel, HOWEVER
   2) Omit it from production .msi files.
   3) Put the lzma.dll file in the same directory as the JK .msi file on deployment web
      servers with an email list note that both have to be downloaded to the same location
      to enable the .msi file to be executed directly.
   4) Explain that when the JK online installer is executed, the lzma.dll file will first
      "appear" in the same folder as the .msi file and then 
The result of this will be an additional ~60000 byte savings on the .msi file size and minimal wasted time from test failures caused by the native lib being in the wrong place at the wrong time.

Comments
EVALUATION We're no longer supporting kernel in JDK7.
28-01-2011

EVALUATION Actually this was pronounced relatively unimportant quite a while ago, and always less important than other work since then. But at some point it will hopefully seem like a cheap improvement.
13-05-2008

SUGGESTED FIX 1) make .msi "MoveFile" operation work properly 2) publish "how-to" for developers to understand how to get lzma.dll in the right place when the online installer is not being used with Java Kernel.
11-12-2007

EVALUATION Got to happen.
10-12-2007