Review request for 6909572: Add a new target for building modules
Mandy Chung
Mandy.Chung at Sun.COM
Thu Dec 17 00:02:31 PST 2009
I updated the class analyzer to generate a new <module>.resources file.
The jdk module build will include the non-java resource files in each
module. The new webrev is at:
http://cr.openjdk.java.net/~mchung/6909572/webrev.01
I also generate a webrev showing the class analyzer change w.r.t. the
jigsaw-tools repository for your reference:
http://cr.openjdk.java.net/~mchung/6909572/jigsaw-tools-webrev/
Thanks
Mandy
Mandy Chung wrote:
> We have made some progress in eliminating several undesirable
> dependencies in the past few builds [1]. A class analyzer tool in
> the jigsaw/tools repository [2] has been developed and used to analyze
> the dependencies.
>
> The next step of the jdk modularization effort is to make the build
> changes to generate modules. I plan to break this task into several
> steps. The first step is to add a new "modules" target to build the
> module image that has one jar file per module rather than rt.jar.
> This change does not have any impact to the existing jdk build.
>
> Webrev at:
> http://cr.openjdk.java.net/~mchung/6909572/webrev.00
>
> Details:
> 1. The new target will create two jdk-module-image and
> jre-module-image directories.
> 2. modules are generated to replace rt.jar and other jar files under
> jre/lib and jre/lib/ext.
> 3. non-java resources are in resources.jar and will be soon included
> in their corresponding modules (see 6910370).
> 4. The class analyzer tool is included in make/modules/tools.
>
> It's a build tool and make/tools seems to be an appropriate place for
> it. I decide to put it under make/modules/tools for 2 reasons. (a)
> classanalyzer depends on the jdk 7 com.sun.tools.classfile library
> that is not available when make/tools is built (while is the first
> subdirectory being built using the bootstrap javac (1.6)) (b) Once we
> modularize the source tree and the build, this tool and
> make/modules/Makefile will no longer be needed. The entire
> make/modules directory can go away at that time.
>
> 5. make/modules/modules.config contains the module definitions of
> fine-grained modules that we currently define. The list of modules is
> yet to be finalized. They could possibly be grouped into
> coarser-grained profiles in the future.
>
> Another change related to this build change is:
> 6909573: Temporary launcher support to add modules in the bootclasspath
> webrev: http://cr.openjdk.java.net/~mchung/6909573/webrev.00/
>
> Kumar, can you please review the launcher change?
>
> The launcher is modified to detect if this is a module image and
> enumerate the list of modules to add to the bootclasspath. The
> launcher doesn't alter the bootclasspath for the existing jdk build.
>
> Thanks
> Mandy
>
> [1] http://blogs.sun.com/alanb/entry/is_the_jdk_losing_its
> [2] http://hg.openjdk.java.net/jigsaw/tools/
More information about the jigsaw-dev
mailing list