Review request: 8003562: Provide a command-line tool to find static dependencies
Mandy Chung
mandy.chung at oracle.com
Thu Dec 6 01:36:30 UTC 2012
This review request (add a new jdeps tool in the JDK) include changes in
langtools and the jdk build. I would need reviewers from the langtools
and the build-infra team.
Webrev for review:
http://cr.openjdk.java.net/~mchung/jdk8/webrevs/jdeps/langtools-webrev.02/
http://cr.openjdk.java.net/~mchung/jdk8/webrevs/jdeps/jdk-webrev.02/
The jdeps source is in the langtools repo. The change in the jdk repo is
to add the new jdeps executable. I made change in the old and new build
for the addition of this new jdeps tool. I discussed with Jon whether I
should modify langtools/make/build.xml to add a new jdeps target. Since
the old build will be replaced by the new build soon, I simply add
com/sun/tools/jdeps as part of javap.includes.
Alan,
The -d option is kept as a hidden option and use as implementation. We
can remove it when it's determined not useful in the future. I also
rename -v:summary to -summary.
Thanks
Mandy
----------------------------
$ jdep -h
Usage: jdeps <options> <files....>
where possible options include:
-version Version information
-classpath <path> Specify where to find class files
-summary Print dependency summary only
-v:class Print class-level dependencies
-v:package Print package-level dependencies
-p <package name> Restrict analysis to classes in this package
(may be given multiple times)
-e <regex> Restrict analysis to packages matching pattern
(-p and -e are exclusive)
-P --profile Show profile or the file containing a package
-R --recursive Traverse all dependencies recursively
-all Process all classes specified in -classpath
$ jdep Notepad.jar Ensemble.jar
Notepad.jar -> D:\tools\devtools\jdk8\windows-i586\jre\lib\rt.jar
<unnamed> (Notepad.jar)
-> java.awt
-> java.awt.event
-> java.beans
-> java.io
-> java.lang
-> java.net
-> java.util
-> java.util.logging
-> javax.swing
-> javax.swing.border
-> javax.swing.event
-> javax.swing.text
-> javax.swing.tree
-> javax.swing.undo
Ensemble.jar -> D:\tools\devtools\jdk8\windows-i586\jre\lib\jfxrt.jar
Ensemble.jar -> D:\tools\devtools\jdk8\windows-i586\jre\lib\rt.jar
com.javafx.main (Ensemble.jar)
-> java.applet
-> java.awt
-> java.awt.event
-> java.io
-> java.lang
-> java.lang.reflect
-> java.net
-> java.security
-> java.util
-> java.util.jar
-> javax.swing
-> sun.misc JDK internal API (rt.jar)
More information about the core-libs-dev
mailing list