< prev index next >

src/jdk.jdeps/share/man/javap.1

Print this page

        

@@ -1,7 +1,6 @@
-'\" t
-.\" Copyright (c) 1994, 2014, Oracle and/or its affiliates. All rights reserved.
+.\" Copyright (c) 1994, 2019, Oracle and/or its affiliates. All rights reserved.
 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 .\"
 .\" This code is free software; you can redistribute it and/or modify it
 .\" under the terms of the GNU General Public License version 2 only, as
 .\" published by the Free Software Foundation.

@@ -18,363 +17,259 @@
 .\"
 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 .\" or visit www.oracle.com if you need additional information or have any
 .\" questions.
 .\"
-.\" Title: javap
-.\" Language: English
-.\" Date: 8 August 2014
-.\" SectDesc: Basic Tools
-.\" Software: JDK 8
-.\" Arch: generic
-.\" Part Number: E38207-03
+.\" Automatically generated by Pandoc 2.3.1
 .\"
-.if n .pl 99999
-.TH "javap" "1" "8 August 2014" "JDK 8" "Basic Tools"
-.\" -----------------------------------------------------------------
-.\" * Define some portability stuff
-.\" -----------------------------------------------------------------
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.\" http://bugs.debian.org/507673
-.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.ie \n(.g .ds Aq \(aq
-.el       .ds Aq '
-.\" -----------------------------------------------------------------
-.\" * set default formatting
-.\" -----------------------------------------------------------------
-.\" disable hyphenation
-.nh
-.\" disable justification (adjust text to left margin only)
-.ad l
-.\" -----------------------------------------------------------------
-.\" * MAIN CONTENT STARTS HERE *
-.\" -----------------------------------------------------------------
-.SH "NAME"
-javap \- Disassembles one or more class files\&.
-.SH "SYNOPSIS"
-.sp
-.if n \{\
-.RS 4
-.\}
+.TH "JAVAP" "1" "2018" "JDK 13" "JDK Commands"
+.hy
+.SH NAME
+.PP
+javap \- disassemble one or more class files
+.SH SYNOPSIS
+.PP
+\f[CB]javap\f[R] [\f[I]options\f[R]] \f[I]classes\f[R]...
+.TP
+.B \f[I]options\f[R]
+Specifies the command\-line options.
+See \f[B]Options for javap\f[R].
+.RS
+.RE
+.TP
+.B \f[I]classes\f[R]
+Specifies one or more classes separated by spaces to be processed for
+annotations.
+You can specify a class that can be found in the class path by its file
+name, URL, or by its fully qualified class name.
+.RS
+.PP
+Examples:
+.RS
+.PP
+\f[CB]path/to/MyClass.class\f[R]
+.RE
+.RS
+.PP
+\f[CB]jar:file:///path/to/MyJar.jar!/mypkg/MyClass.class\f[R]
+.RE
+.RS
+.PP
+\f[CB]java.lang.Object\f[R]
+.RE
+.RE
+.SH DESCRIPTION
+.PP
+The \f[CB]javap\f[R] command disassembles one or more class files.
+The output depends on the options used.
+When no options are used, the \f[CB]javap\f[R] command prints the
+protected and public fields, and methods of the classes passed to it.
+.PP
+The \f[CB]javap\f[R] command isn\[aq]t multirelease JAR aware.
+Using the class path form of the command results in viewing the base
+entry in all JAR files, multirelease or not.
+Using the URL form, you can use the URL form of an argument to specify a
+specific version of a class to be disassembled.
+.PP
+The \f[CB]javap\f[R] command prints its output to \f[CB]stdout\f[R].
+.PP
+\f[B]Note:\f[R]
+.PP
+In tools that support \f[CB]\-\-\f[R] style options, the GNU\-style
+options can use the equal sign (\f[CB]=\f[R]) instead of a white space to
+separate the name of an option from its value.
+.SH OPTIONS FOR JAVAP
+.TP
+.B \f[CB]\-help\f[R], \f[CB]\-\-help\f[R] , or \f[CB]\-?\f[R]
+Prints a help message for the \f[CB]javap\f[R] command.
+.RS
+.RE
+.TP
+.B \f[CB]\-version\f[R]
+Prints release information.
+.RS
+.RE
+.TP
+.B \f[CB]\-verbose\f[R] or \f[CB]\-v\f[R]
+Prints additional information about the selected class.
+.RS
+.RE
+.TP
+.B \f[CB]\-l\f[R]
+Prints line and local variable tables.
+.RS
+.RE
+.TP
+.B \f[CB]\-public\f[R]
+Shows only public classes and members.
+.RS
+.RE
+.TP
+.B \f[CB]\-protected\f[R]
+Shows only protected and public classes and members.
+.RS
+.RE
+.TP
+.B \f[CB]\-package\f[R]
+Shows package/protected/public classes and members (default).
+.RS
+.RE
+.TP
+.B \f[CB]\-private\f[R] or \f[CB]\-p\f[R]
+Shows all classes and members.
+.RS
+.RE
+.TP
+.B \f[CB]\-c\f[R]
+Prints disassembled code, for example, the instructions that comprise
+the Java bytecodes, for each of the methods in the class.
+.RS
+.RE
+.TP
+.B \f[CB]\-s\f[R]
+Prints internal type signatures.
+.RS
+.RE
+.TP
+.B \f[CB]\-sysinfo\f[R]
+Shows system information (path, size, date, MD5 hash) of the class being
+processed.
+.RS
+.RE
+.TP
+.B \f[CB]\-constants\f[R]
+Shows \f[CB]static\ final\f[R] constants.
+.RS
+.RE
+.TP
+.B \f[CB]\-\-module\f[R] \f[I]module\f[R] or \f[CB]\-m\f[R] \f[I]module\f[R]
+Specifies the module containing classes to be disassembled.
+.RS
+.RE
+.TP
+.B \f[CB]\-\-module\-path\f[R] \f[I]path\f[R]
+Specifies where to find application modules.
+.RS
+.RE
+.TP
+.B \f[CB]\-\-system\f[R] \f[I]jdk\f[R]
+Specifies where to find system modules.
+.RS
+.RE
+.TP
+.B \f[CB]\-\-class\-path\f[R] \f[I]path\f[R], \f[CB]\-classpath\f[R] \f[I]path\f[R], or \f[CB]\-cp\f[R] \f[I]path\f[R]
+Specifies the path that the \f[CB]javap\f[R] command uses to find user
+class files.
+It overrides the default or the \f[CB]CLASSPATH\f[R] environment variable
+when it\[aq]s set.
+.RS
+.RE
+.TP
+.B \f[CB]\-bootclasspath\f[R] \f[I]path\f[R]
+Overrides the location of bootstrap class files.
+.RS
+.RE
+.TP
+.B \f[CB]\-J\f[R]\f[I]option\f[R]
+Passes the specified option to the JVM.
+For example:
+.RS
+.IP
 .nf
-\fBjavap\fR [\fIoptions\fR] \fIclassfile\fR\&.\&.\&.
-.fi
-.if n \{\
-.RE
-.\}
-.PP
-\fIoptions\fR
-.RS 4
-The command\-line options\&. See Options\&.
-.RE
-.PP
-\fIclassfile\fR
-.RS 4
-One or more classes separated by spaces to be processed for annotations such as DocFooter\&.class\&. You can specify a class that can be found in the class path, by its file name or with a URL such as
-\fBfile:///home/user/myproject/src/DocFooter\&.class\fR\&.
-.RE
-.SH "DESCRIPTION"
-.PP
-The
-\fBjavap\fR
-command disassembles one or more class files\&. The output depends on the options used\&. When no options are used, then the
-\fBjavap\fR
-command prints the package, protected and public fields, and methods of the classes passed to it\&. The
-\fBjavap\fR
-command prints its output to
-\fBstdout\fR\&.
-.SH "OPTIONS"
-.PP
-\-help
-.br
-\-\-help
-.br
-\-?
-.RS 4
-Prints a help message for the
-\fBjavap\fR
-command\&.
-.RE
-.PP
-\-version
-.RS 4
-Prints release information\&.
-.RE
-.PP
-\-l
-.RS 4
-Prints line and local variable tables\&.
-.RE
-.PP
-\-public
-.RS 4
-Shows only public classes and members\&.
-.RE
-.PP
-\-protected
-.RS 4
-Shows only protected and public classes and members\&.
-.RE
-.PP
-\-private
-.br
-\-p
-.RS 4
-Shows all classes and members\&.
-.RE
-.PP
-\-J\fIoption\fR
-.RS 4
-Passes the specified option to the JVM\&. For example:
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-\fBjavap \-J\-version\fR
-\fBjavap \-J\-Djava\&.security\&.manager \-J\-Djava\&.security\&.policy=MyPolicy MyClassName\fR
+\f[CB]
+javap\ \-J\-version
  
+javap\ \-J\-Djava.security.manager\ \-J\-Djava.security.policy=MyPolicy\ MyClassName
+\f[R]
 .fi
-.if n \{\
-.RE
-.\}
-For more information about JVM options, see the command documentation\&.
-.RE
-.PP
-\-s
-.RS 4
-Prints internal type signatures\&.
-.RE
-.PP
-\-sysinfo
-.RS 4
-Shows system information (path, size, date, MD5 hash) of the class being processed\&.
-.RE
-.PP
-\-constants
-.RS 4
-Shows
-\fBstatic final\fR
-constants\&.
-.RE
-.PP
-\-c
-.RS 4
-Prints disassembled code, for example, the instructions that comprise the Java bytecodes, for each of the methods in the class\&.
-.RE
-.PP
-\-verbose
-.RS 4
-Prints stack size, number of locals and arguments for methods\&.
-.RE
-.PP
-\-classpath \fIpath\fR
-.RS 4
-Specifies the path the
-\fBjavap\fR
-command uses to look up classes\&. Overrides the default or the
-\fBCLASSPATH\fR
-environment variable when it is set\&.
-.RE
-.PP
-\-bootclasspath \fIpath\fR
-.RS 4
-Specifies the path from which to load bootstrap classes\&. By default, the bootstrap classes are the classes that implement the core Java platform located in
-\fBjre/lib/rt\&.jar\fR
-and several other JAR files\&.
-.RE
 .PP
-\-extdir \fIdirs\fR
-.RS 4
-Overrides the location at which installed extensions are searched for\&. The default location for extensions is the value of
-\fBjava\&.ext\&.dirs\fR\&.
+See \f[I]Overview of Java Options\f[R] in \f[B]java\f[R].
 .RE
-.SH "EXAMPLE"
+.SH JAVAP EXAMPLE
 .PP
-Compile the following
-\fBDocFooter\fR
-class:
-.sp
-.if n \{\
-.RS 4
-.\}
+Compile the following \f[CB]HelloWorldFrame\f[R] class:
+.IP
 .nf
-\fBimport java\&.awt\&.*;\fR
-\fBimport java\&.applet\&.*;\fR
-\fB \fR
-\fBpublic class DocFooter extends Applet {\fR
-\fB        String date;\fR
-\fB        String email;\fR
-\fB \fR
-\fB        public void init() {\fR
-\fB                resize(500,100);\fR
-\fB                date = getParameter("LAST_UPDATED");\fR
-\fB                email = getParameter("EMAIL");\fR
-\fB        }\fR
-\fB \fR
-\fB        public void paint(Graphics g) {\fR
-\fB                g\&.drawString(date + " by ",100, 15);\fR
-\fB                g\&.drawString(email,290,15);\fR
-\fB        }\fR
-\fB}\fR
+\f[CB]
+import\ java.awt.Graphics;
+
+import\ javax.swing.JFrame;
+import\ javax.swing.JPanel;
+
+public\ class\ HelloWorldFrame\ extends\ JFrame\ {
+
+\ \ \ String\ message\ =\ "Hello\ World!";
+
+\ \ \ public\ HelloWorldFrame(){
+\ \ \ \ \ \ \ \ setContentPane(new\ JPanel(){
+\ \ \ \ \ \ \ \ \ \ \ \ \@Override
+\ \ \ \ \ \ \ \ \ \ \ \ protected\ void\ paintComponent(Graphics\ g)\ {
+\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ g.drawString(message,\ 15,\ 30);
+\ \ \ \ \ \ \ \ \ \ \ \ }
+\ \ \ \ \ \ \ \ });
+\ \ \ \ \ \ \ \ setSize(100,\ 100);
+\ \ \ \ }
+\ \ \ \ public\ static\ void\ main(String[]\ args)\ {
+\ \ \ \ \ \ \ \ HelloWorldFrame\ frame\ =\ new\ HelloWorldFrame();
+\ \ \ \ \ \ \ \ frame.setVisible(true);
+
+\ \ \ \ }
  
+}
+\f[R]
 .fi
-.if n \{\
-.RE
-.\}
 .PP
-The output from the
-\fBjavap DocFooter\&.class\fR
-command yields the following:
-.sp
-.if n \{\
-.RS 4
-.\}
+The output from the \f[CB]javap\ HelloWorldFrame.class\f[R] command yields
+the following:
+.IP
 .nf
-\fBCompiled from "DocFooter\&.java"\fR
-\fBpublic class DocFooter extends java\&.applet\&.Applet {\fR
-\fB  java\&.lang\&.String date;\fR
-\fB  java\&.lang\&.String email;\fR
-\fB  public DocFooter();\fR
-\fB  public void init();\fR
-\fB  public void paint(java\&.awt\&.Graphics);\fR
-\fB}\fR
- 
+\f[CB]
+Compiled\ from\ "HelloWorldFrame.java"
+public\ class\ HelloWorldFrame\ extends\ javax.swing.JFrame\ {
+\ \ java.lang.String\ message;
+\ \ public\ HelloWorldFrame();
+\ \ public\ static\ void\ main(java.lang.String[]);
+}
+\f[R]
 .fi
-.if n \{\
-.RE
-.\}
 .PP
-The output from
-\fBjavap \-c DocFooter\&.class\fR
-command yields the following:
-.sp
-.if n \{\
-.RS 4
-.\}
+The output from the \f[CB]javap\ \-c\ HelloWorldFrame.class\f[R] command
+yields the following:
+.IP
 .nf
-\fBCompiled from "DocFooter\&.java"\fR
-\fBpublic class DocFooter extends java\&.applet\&.Applet {\fR
-\fB  java\&.lang\&.String date;\fR
-\fB  java\&.lang\&.String email;\fR
+\f[CB]
+Compiled\ from\ "HelloWorldFrame.java"
+public\ class\ HelloWorldFrame\ extends\ javax.swing.JFrame\ {
+\ \ java.lang.String\ message;
  
-\fB  public DocFooter();\fR
-\fB    Code:\fR
-\fB       0: aload_0       \fR
-\fB       1: invokespecial #1                  // Method\fR
-\fBjava/applet/Applet\&."<init>":()V\fR
-\fB       4: return        \fR
- 
-\fB  public void init();\fR
-\fB    Code:\fR
-\fB       0: aload_0       \fR
-\fB       1: sipush        500\fR
-\fB       4: bipush        100\fR
-\fB       6: invokevirtual #2                  // Method resize:(II)V\fR
-\fB       9: aload_0       \fR
-\fB      10: aload_0       \fR
-\fB      11: ldc           #3                  // String LAST_UPDATED\fR
-\fB      13: invokevirtual #4                  // Method\fR
-\fB getParameter:(Ljava/lang/String;)Ljava/lang/String;\fR
-\fB      16: putfield      #5                  // Field date:Ljava/lang/String;\fR
-\fB      19: aload_0       \fR
-\fB      20: aload_0       \fR
-\fB      21: ldc           #6                  // String EMAIL\fR
-\fB      23: invokevirtual #4                  // Method\fR
-\fB getParameter:(Ljava/lang/String;)Ljava/lang/String;\fR
-\fB      26: putfield      #7                  // Field email:Ljava/lang/String;\fR
-\fB      29: return        \fR
- 
-\fB  public void paint(java\&.awt\&.Graphics);\fR
-\fB    Code:\fR
-\fB       0: aload_1       \fR
-\fB       1: new           #8                  // class java/lang/StringBuilder\fR
-\fB       4: dup           \fR
-\fB       5: invokespecial #9                  // Method\fR
-\fB java/lang/StringBuilder\&."<init>":()V\fR
-\fB       8: aload_0       \fR
-\fB       9: getfield      #5                  // Field date:Ljava/lang/String;\fR
-\fB      12: invokevirtual #10                 // Method\fR
-\fB java/lang/StringBuilder\&.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\fR
-\fB      15: ldc           #11                 // String  by \fR
-\fB      17: invokevirtual #10                 // Method\fR
-\fB java/lang/StringBuilder\&.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;\fR
-\fB      20: invokevirtual #12                 // Method\fR
-\fB java/lang/StringBuilder\&.toString:()Ljava/lang/String;\fR
-\fB      23: bipush        100\fR
-\fB      25: bipush        15\fR
-\fB      27: invokevirtual #13                 // Method\fR
-\fB java/awt/Graphics\&.drawString:(Ljava/lang/String;II)V\fR
-\fB      30: aload_1       \fR
-\fB      31: aload_0       \fR
-\fB      32: getfield      #7                  // Field email:Ljava/lang/String;\fR
-\fB      35: sipush        290\fR
-\fB      38: bipush        15\fR
-\fB      40: invokevirtual #13                 // Method\fR
-\fBjava/awt/Graphics\&.drawString:(Ljava/lang/String;II)V\fR
-\fB      43: return        \fR
-\fB}\fR
+\ \ public\ HelloWorldFrame();
+\ \ \ \ Code:
+\ \ \ \ \ \ \ 0:\ aload_0
+\ \ \ \ \ \ \ 1:\ invokespecial\ #1\ \ \ \ \ \ \ \ //\ Method\ javax/swing/JFrame."<init>":()V
+\ \ \ \ \ \ \ 4:\ aload_0
+\ \ \ \ \ \ \ 5:\ ldc\ \ \ \ \ \ \ \ \ \ \ #2\ \ \ \ \ \ \ \ //\ String\ Hello\ World!
+\ \ \ \ \ \ \ 7:\ putfield\ \ \ \ \ \ #3\ \ \ \ \ \ \ \ //\ Field\ message:Ljava/lang/String;
+\ \ \ \ \ \ 10:\ aload_0
+\ \ \ \ \ \ 11:\ new\ \ \ \ \ \ \ \ \ \ \ #4\ \ \ \ \ \ \ \ //\ class\ HelloWorldFrame$1
+\ \ \ \ \ \ 14:\ dup
+\ \ \ \ \ \ 15:\ aload_0
+\ \ \ \ \ \ 16:\ invokespecial\ #5\ \ \ \ \ \ \ \ //\ Method\ HelloWorldFrame$1."<init>":(LHelloWorldFrame;)V
+\ \ \ \ \ \ 19:\ invokevirtual\ #6\ \ \ \ \ \ \ \ //\ Method\ setContentPane:(Ljava/awt/Container;)V
+\ \ \ \ \ \ 22:\ aload_0
+\ \ \ \ \ \ 23:\ bipush\ \ \ \ \ \ \ \ 100
+\ \ \ \ \ \ 25:\ bipush\ \ \ \ \ \ \ \ 100
+\ \ \ \ \ \ 27:\ invokevirtual\ #7\ \ \ \ \ \ \ \ //\ Method\ setSize:(II)V
+\ \ \ \ \ \ 30:\ return
  
+\ \ public\ static\ void\ main(java.lang.String[]);
+\ \ \ \ Code:
+\ \ \ \ \ \ \ 0:\ new\ \ \ \ \ \ \ \ \ \ \ #8\ \ \ \ \ \ \ \ //\ class\ HelloWorldFrame
+\ \ \ \ \ \ \ 3:\ dup
+\ \ \ \ \ \ \ 4:\ invokespecial\ #9\ \ \ \ \ \ \ \ //\ Method\ "<init>":()V
+\ \ \ \ \ \ \ 7:\ astore_1
+\ \ \ \ \ \ \ 8:\ aload_1
+\ \ \ \ \ \ \ 9:\ iconst_1
+\ \ \ \ \ \ 10:\ invokevirtual\ #10\ \ \ \ \ \ \ //\ Method\ setVisible:(Z)V
+\ \ \ \ \ \ 13:\ return
+}
+\f[R]
 .fi
-.if n \{\
-.RE
-.\}
-.SH "SEE ALSO"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-java(1)
-.RE
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-javac(1)
-.RE
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-javadoc(1)
-.RE
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-jdb(1)
-.RE
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-jdeps(1)
-.RE
-.br
-'pl 8.5i
-'bp
< prev index next >