jikes manual
Section: User Commands (1)
NAME
jikes - java source to bytecode compiler
SYNOPSIS
jikes [-options] [+options] [@files] file.java...
Options, @files, and filenames may be intermixed. Individual options
should not be repeated, unless noted below.
DESCRIPTION
Jikes translates Java(TM) source files to bytecode. Features
include strict adherence to the language specification, automatic
makefile generation and incremental compilation. It is maintained
by the Jikes Project.
At this time, jikes only recognizes the full name of options; you
cannot abbreviate or group them. You can give different argument types
in any order. Options are global, so they affect compilation of files
listed earlier on the command line.
OPTIONS
Jikes may be invoked with the following command-line options:
- -bootclasspath path
-
- --bootclasspath path
-
Use path for the bootclasspath. This path is searched first for
library class files, and is usually set to java/lib/classes.zip
or java/jre/lib/rt.jar.
- -classpath path
-
- -cp path
-
- --classpath path
-
Use path for CLASSPATH. This path is searched for both user source and
compiled class files.
- -d directory
-
- --target-directory directory
-
Write class files in the specified directory. Note that this directory is
NOT in your classpath unless you list it there as well.
- -debug
-
No effect (recognized for compatibility).
- -depend
-
- --depend
-
- -Xdepend
-
Recompile all used classes.
- -deprecation
-
- --deprecation
-
Report uses of deprecated features.
- -encoding
encoding -
- --encoding encoding
-
Use specified encoding to read source files. This is not available in
some builds, because it requires a working iconv or ICU encoder.
Note: in particular that the Windows binary provided for
download does NOT include support for the encoding option as there
is not a transcoding library on windows by default. You can tell if
a binary has encoding support or not, but running jikes --help
and looking for the --encoding option: if it is not listed, then
this binary does NOT include support for encoding.
- -extdirs path
-
- --extdirs path
-
Use path for extensions directories. This is typically set to grab jar
and zip extension files located in java/jre/lib/ext.
- -g
-
Equivalent to -g:source,lines,vars
.
- -g:none|{source,lines,vars}
-
Specify which of three classfile debug options should be enabled. If
this is not specified, the default is
source,lines. source stores the filename of the source
file in the class file, lines adds line number tracking to tie
bytecodes to their location in the source file, and vars adds a
table in the class file which stores the name of local variables and
parameters, as well as their scope.
- -help
-
- --help
-
- -h
-
- -?
-
Prints a helpful summary of options, then exit.
- -J
... -
No effect, since jikes is native code, and does not need a Virtual
Machine (ignored for compatibility).
- -nowarn
-
- --nowarn
-
- -q
-
Do not issue warning messages.
- -nowrite
-
- --nowrite
-
Do not write any class files, but list which ones would be written if
used with -verbose
.
- -O
-
- --optimize
-
Optimize the bytecode. Technically, this means jikes should inline
private and final methods where appropriate, but currently it does
nothing.
- -source
release -
- --source release
-
Specify which Java SDK release the source syntax obeys. For example,
to compile code with the assert keyword, you would specify
-source 1.4. Recognized releases are 1.1 through
1.4. If unspecified, this defaults to 1.3.
- -sourcepath path
-
- --sourcepath path
-
Use path for specifying user "source only" directories. Class files in
this path are ignored unless listed in other paths.
- -target release
-
- --target release
-
Specify which Java SDK release the bytecode should target. For
example, in Java 1.4, exception chaining was introduced, so a failed
class literal can chain the NoClassDefFoundError to its original
ClassNotFoundException, rather than the old behavior in Java 1.3 where
the original exception is just discarded. You would get the new
behavior by specifying -target 1.4. Recognized releases are
1.1 through 1.4. If unspecified, this defaults to whatever
-source level is in force.
- -verbose
-
- --verbose
-
- -v
-
List files read and written. Also useful with -nowrite
for a
dry run to track dependencies.
- -version
-
- --version
-
- -V
-
Print a version message, and contact information, then exit.
- -Xstdout
-
Write error messages to standard output, not stderr. At the moment,
this is incompatible with javac, which takes an argument as the name
of the file where it will direct compiler message output.
- ++
-
Compile in incremental mode.
- +B
-
Do not invoke bytecode generator.
- +D
-
Report errors immediately in emacs-form without buffering.
- +DR=
filename -
Write report of dependencies to specified file.
- +E
-
List errors in emacs-form.
- +F
-
Do full dependence check except for Zip and Jar files.
- +K
name=TypeKeyWord -
Map name to type keyword.
- +M
-
Generate makefile dependencies.
- +OLDCSO
-
Select to use same classpath search order as in older versions of
Jikes (for compatibility).
- +P
[flags] -
Pedantic compilation - issues lots of warnings. This option may be
listed multiple times, with cumulative effect. With no flags, this
turns on the default set of pedantic warnings. Specifying a flag will
then turn on or off a particular warning, depending on the presence of
the no- prefix. At present, the only recognized flag is
modifier-order, which warns about the recommended ordering of
multiple modifiers, and is turned on by default in pedantic
compilation mode. Thus, to get all pedantic warnings except this, use
+P +Pno-modifier-order.
- +Tnn
-
Set value of tab to nn spaces.
- +U
-
Do full dependence check including Zip and Jar files.
- +Z
-
Treat cautions as errors. Unfortunately, at the moment, this will not
promote warnings, just cautions.
An argument may have the form @file, which names a file
holding additional command-line arguments. Each line in that file is
treated as an argument, except that lines beginning with @ are
not expanded recursively. Lines may optionally be quoted using either
single or double quotes. There are no escape characters ('\'
is not treated as special).
FILES
Jikes has several options related to classpath searching.
The -bootclasspath, -extdirs, and -sourcepath options are the same
as in javac. In addition to being specified on the command line, the
environment variables BOOTCLASSPATH, EXTDIRS, and
SOURCEPATH may also be used to specify values for these options,
respectively. Jikes also has the -classpath option as in javac,
with the corresponding environment variable CLASSPATH. The
classpath may also be specified in the environment variable
JIKESPATH, although this use is discouraged. If JIKESPATH
and CLASSPATH coexist, preference will be given to
JIKESPATH. A value specified on the command line will be always
be given preference over the value of any environment variable. All
the directories and files specified in these options or environment
variables must be in a colon-separated list, e.g.,
".:$HOME/java/jre/lib/rt.jar".
SEE ALSO
Jikes Project homepage
http://ibm.com/developerworks/opensource/jikes/
for news of recent developments, to download new versions, to report
bugs, or to learn how to participate in the development process.
COPYRIGHT
Copyright © 1996, 1997, 1998, 1999, 2000, 2001, 2002
International Business Machines Corporation and others. All Rights Reserved.
Jikes is licensed under the IBM Public License, included
in the file license.htm distributed with the program, and also
available at the Jikes Project URL.
Portions of Jikes are derived from prior, freely distributable
projects. For more details on this code, see the comments in
src/double.h, src/platform.h, and src/unzip.h.
NOTES
Java is a registered trademark of Sun Microsystems, Inc.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- FILES
-
- SEE ALSO
-
- COPYRIGHT
-
- NOTES
-
This document was created by man2html, using the standard unix manual
pages, then hacked on by cabbey to make the output standalone for
windows users.