Previous: GNU Classpath Properties, Up: System properties


13.3 libgcj Runtime Properties

The following properties are specific to the libgcj runtime and will normally not be found in other core libraries for the java language.

java.fullversion
The combination of java.vm.name and java.vm.version.
java.vm.info
Same as java.fullversion.
impl.prefix
Used by the java.net.DatagramSocket class when set to something else then the empty string. When set all newly created DatagramSockets will try to load a class java.net.[impl.prefix]DatagramSocketImpl instead of the normal java.net.PlainDatagramSocketImpl.
gnu.gcj.progname
The name that was used to invoked the program.
gnu.gcj.runtime.NameFinder.demangle
Whether names in a stack trace should be demangled. Defaults to true.
gnu.gcj.runtime.NameFinder.sanitize
Whether calls to initialize exceptions and starting the runtime system should be removed from the stack trace. Only done when names are demangled. Defaults to true.
gnu.gcj.runtime.NameFinder.remove_unknown
Whether calls to unknown functions (class and method names are unknown) should be removed from the stack trace. Only done when the stack is sanitized. Ignored if this means no stack trace information would be available anymore. Defaults to true.
gnu.gcj.runtime.NameFinder.remove_interpreter
Whether runtime interpreter calls (methods in the _Jv_InterpMethod class and functions starting with `ffi_') should be removed from the stack trace. Only done when the stack is sanitized. Defaults to true.
gnu.gcj.runtime.NameFinder.use_addr2line
Whether an external process (addr2line or addr2name.awk) should be used as fallback to convert the addresses to function names when the runtime is unable to do it through dladdr.
gnu.gcj.runtime.VMClassLoader.library_control
This controls how shared libraries are automatically loaded by the built-in class loader. If this property is set to `full', a full search is done for each requested class. If this property is set to `cache' (the default), then any failed lookups are cached and not tried again. If this property is set to `never', then lookups are never done. For more information, See Extensions.
gnu.gcj.runtime.endorsed.dirs
This is like the standard java.endorsed.dirs, property, but specifies some extra directories which are searched after the standard endorsed directories. This is primarily useful for telling libgcj about additional libraries which are ordinarily incorporated into the JDK, and which should be loaded by the bootstrap class loader, but which are not yet part of libgcj itself for some reason.
gnu.gcj.jit.compiler
This is the full path to gcj executable which should be used to compile classes just-in-time when ClassLoader.defineClass is called. If not set, gcj will not be invoked by the runtime; this can also be controlled via Compiler.disable.
gnu.gcj.jit.options
This is a space-separated string of options which should be passed to gcj when in JIT mode. If not set, a sensible default is chosen.
gnu.gcj.jit.cachedir
This is the directory where cached shared library files are stored. If not set, JIT compilation is disabled. This should never be set to a directory that is writable by any other user.
gnu.gcj.precompiled.db.path
This is a sequence of file names, each referring to a file created by gcj-dbtool. These files will be used by libgcj to find shared libraries corresponding to classes that are loaded from bytecode. libgcj often has a built-in default database; it can be queried using gcj-dbtool -p.