javap - Unix, Linux Command
NAME
javap - Java class file disassembler
SYNOPSIS
javap [
options ]
class ...
DESCRIPTION
The
javap command disassembles a Java class file.
The options determine the output.
If no options are used,
javap prints out the
package,
protected, and
public fields and methods of the classes passed to it.
The
javap command displays its output to
stdout. For example, compile the following class declaration:
import java.awt.*;
import java.applet.*;
public class DocFooter extends Applet {
String date;
String email;
public void init() {
resize(500,100);
date = getParameter("LAST_UPDATED");
email = getParameter("EMAIL");
}
public void paint(Graphics g) {
g.drawString(date + " by ",100, 15);
g.drawString(email,290,15);
}
}
|
The output from
javap DocFooter yields:
Compiled from DocFooter.java
public class DocFooter extends java.applet.Applet {
java.lang.String date;
java.lang.String email;
public void init();
public void paint(java.awt.Graphics);
public DocFooter();
}
|
OPTIONS
The following options are supported:
Tag | Description |
-b |
Ensures backward compatibility with
javap in JDK 1.1.
|
-bootclasspath path |
|
Specifies path from which to load bootstrap classes. By
default, the bootstrap classes are the classes implementing
the core Java platform located in
jre/lib/rt.jar and
jre/lib/charsets.jar. |
-c |
Prints out disassembled code, that is, the instructions
that comprise the Java bytecodes, for each of the
methods in the class.
These are documented in the Java Virtual Machine Specification.
|
-classpathpath |
Specifies the
path javap uses to look up classes.
Overrides the default or the
CLASSPATH environment variable if it is set.
Directories are separated by colons
(:). Thus the general format for
path is:
Tag | Description |
|
.:<your_path> |
For example:
|
Tag | Description |
|
.:/home/avh/classes:/usr/local/java/classes
|
Tag | Description |
-extdirsdirs |
Overrides location at which installed extensions are searched.
The default location for extensions is
jre/lib/ext. |
-help |
Prints out help message for
javap. |
-Jflag |
Passes
flag directly to runtime system.
javap -J-version
javap -JJ-Djava.security.manager \
-Djava.security.policy=MyPolicy MyClassName |
-l |
Displays line and local variable tables.
|
-package |
Shows only package, protected, and public classes and
members. This is the default.
|
-private |
Shows all classes and members.
|
-protected |
Shows only protected and public classes and members.
|
-public |
Shows only public classes and members.
|
-s |
Displays internal type signatures.
|
-verbose |
Prints stack size, number of
locals, and
args for methods.
|
ENVIRONMENT VARIABLES
Tag | Description |
CLASSPATH |
Used to provide the system with a path to user-defined
classes. Directories are separated by colons.
For example:
|
Tag | Description |
|
.:/home/avh/classes:/usr/local/java/classes
|
SEE ALSO