NAME
ikvmc - compile java classes and jars into CIL assemblies
SYNOPOSIS
ikvmc [ -options ] class | jar ...
DESCRIPTION
IKVM is an implentation of the Java for the Common Language
Infrastructure (CLI) runtime. It includes a byte code JIT
compiler/verifier to translate Java byte code to CIL and GNU Classpath
to provide the Java class libraries. ikvmc allows statically compiling
of Java bytecodes in Java classes and jars into CIL assemblies. The
ikvm(1) program provides dynamic compilation to CIL and execution.
The Java class or jar parameters may be file globs such as *.class and
used to process multiple sources in one step. Duplicates specified in
processing will be ignored, with a warning given.
OPTIONS
-Dname=value
Set system property name to value at runtime.
-apartment:mta
Apply MTAThreadAttribute to the main class.
-apartment:none
Don’t apply STAThreadAttribute to the main class.
-apartment:sta
(default) Apply STAThreadAttribute to the main class.
-assembly:assembly-name
Specify the generated assembly name to assembly-name If this
option is omitted, the assembly name is usually the output
filename.
-da[:packagename ... | :classname]
Set the system property to disable assertions.
-debug Generate debugging info in the output file. Only useful if the
source class files contained debug information, such as compiled
with the javac -g option.
-disableassertions[:packagename ... | :classname]
Set the system property to disable assertions.
-ea[:packagename ... | :classname]
Set the system property to enable assertions.
-enableassertions[:packagename ... | :classname]
Set the system property to enable assertions.
-exclude:filename
Use the list of classes in filename to exclude from compiling.
-key:keycontainer
Use the key in the container keycontainer to sign the assembly.
-keyfile:keyfilename
Use the key in file keyfilename to sign the assembly.
-main:mainclass
Specify the main method class mainclass contains the main
method. If omitted and the target is an executable, a search is
done for a qualifying main method and ikvmc reports if it is
found.
-noglobbing
Do not glob the class or jar arguments.
-nojni Do not generate a JNI stub for native methods.
-nostacktraceinfo
Do not create metadata to emit rich stack traces.
-opt:fields
Remove unused private fields.
-out:outputfile
Set the output filename to outputfile. The extension used here
must match the -target used. For a library, it must end in .dll
and for an exe or winexe, it must end in .exe. If this option
is omitted, an output name will be chosen based on the target
type and the name of the input files. If the input files were
given with globs, this option must be used.
-recurse:filespec
Process all files and directories matching filespec which can
use globbing.
-r:library-filespec
-reference:library-filespec
Reference an assembly library-filespec used from Java. This
option can be used multiple times and globbing is allowed.
-resource:name=path
Include a Java resource named name in file path.
-srcpath:path
Set the location of source code for debugging to path. The name
of a package is appended to the path to find the file.
-target:exe
-target:library
-target:winexe
-target:module
Set the generated target type to either a console executable
(exe) generating a result.exe, library (library) generating a
result.dll, windows executable for GUI applications (winexe)
generating a result.exe or module for use by the linker (module)
generating a result.netmodule. winexe is only used on Windows.
-Xmethodtrace:method-name
Build tracing into the specified output method method-name.
-Xtrace:name
Displays all tracepoints with the given name name.
-version:M.m.b.r
Set the assembly version to M.m.b.r.
SEE ALSO
ikvm(1), ikvmstub(1).
IKVM Project web site http://ikvm.net/
Man page by Dave Beckett, made available under the same terms as IKVM.
2005-06-19 ikvm(1)