Review request: 8003562: Provide a command-line tool to find static dependencies (original) (raw)

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 <files....> where possible options include: -version Version information -classpath Specify where to find class files -summary Print dependency summary only -v:class Print class-level dependencies -v:package Print package-level dependencies -p Restrict analysis to classes in this package (may be given multiple times) -e 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 (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