make/jdk/netbeans/jarzip/README
author michaelm
Thu, 14 Nov 2019 09:06:10 +0000
branchunixdomainchannels
changeset 59074 7917f95f74c4
parent 47216 71c04702a3d5
permissions -rw-r--r--
unixdomainchannels: minor apidoc update
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
Working on Jar and Zip code using the NetBeans IDE
90ce3da70b43 Initial load
duke
parents:
diff changeset
     2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
This note is specific to working on jar and zip; much more information about
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
working with this project and others is in ../README.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
This project allows developers to work on the Jar and Zip in java.util.jar and
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
java.util.zip, as well as the jar tool itself in sun.tools.jar.  The NetBeans
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
project supports editing, building, testing, and debugging of this code.  This
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
is a make-based project, and involves compilation of native code.  Some of
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
this native code is provided by the JDK community, but the base zip library is
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
from http://www.zlib.net.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
Please note: The most recent zlib is version 1.2.3.  We are providing zlib
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
version 1.1.3, modified to include security fixes that have been added since
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
that release.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
Source code layout
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
The jar tool depends on the jar library, which in turn depends on the zip
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
library.  This in turn depends on some native code, which in turn depends on
90ce3da70b43 Initial load
duke
parents:
diff changeset
    21
the zlib library:
90ce3da70b43 Initial load
duke
parents:
diff changeset
    22
90ce3da70b43 Initial load
duke
parents:
diff changeset
    23
sun.tools.jar depends on
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
  java.util.jar, which depends on
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
    java.util.zip, which depends on
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
      src/share/native/java/util/zip, which depends on
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
        src/share/native/java/util/zip/zlib-1.1.3.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
The project is set up to invoke make on the zip code first.  This make target
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
compile the native zip code, as well as the Java sources in java.util.zip.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
Subsequent invocations of make build java.util.jar, and then sun.tools.jar.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
Insofar as NetBeans use is concerned with Java code, most things you are used
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
to.  You can build the project.  There are several regression tests included,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
run either as a group via Test Project or individually via Run File.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
Debugging is also supported, try Debug File.  Since the jar tool needs command
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
line parameters in order to do anything interesting, it is not hooked up to
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
Run Project in NetBeans.