gnu.classpath
Class VMSystemProperties

java.lang.Object
  extended by gnu.classpath.VMSystemProperties

public class VMSystemProperties
extends Object

Jikes RVM implementation of GNU Classpath's gnu.classpath.VMSystemProperties.

Library support interface of Jikes RVM. See the Javadoc documentation for GNU Classpath's reference implementation of VMSystemProperties -- for copyright reasons, we cannot duplicate it here.


Constructor Summary
VMSystemProperties()
           
 
Method Summary
private static void insertLibraryPath(Properties p)
          Set java.library.path.
static void postInit(Properties properties)
          Override the default SystemProperties code; insert the command-line arguments.
static void preInit(Properties p)
          VMRuntime.insertSystemProperties is used by Classpath versions through Classpath 0.12.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VMSystemProperties

public VMSystemProperties()
Method Detail

preInit

public static void preInit(Properties p)
VMRuntime.insertSystemProperties is used by Classpath versions through Classpath 0.12. Starting with Classpath 0.13, we use gnu.classpath.VMSystemProperties.preInit and gnu.classpath.VMSystemProperties.postInit.


insertLibraryPath

private static void insertLibraryPath(Properties p)
Set java.library.path.

I wish I knew where to check in the source code to confirm that this is, in fact, the process we actually follow. I do not understand this code. I do not understand why we are adding something to java.library.path. --Steve Augart, 3/23/2004 XXX


postInit

public static void postInit(Properties properties)
Override the default SystemProperties code; insert the command-line arguments.

The following are set by the "runrvm" script before we go into the C boot image runner, by passing them as command-line args with the -D flag:

os.name, os.arch, os.version user.name, user.home, user.dir gnu.classpath.vm.shortname, gnu.classpath.home.url, java.home,

We can look at them here via CommandLineArgs.getEnvironmentArg().

They will be automatically set for us by CommandLineArgs.lateProcessCommandLineArguments() if we do not handle them here. That won't occur until the VM is fully booted. That's too late for some classes, such as java.util.TimeZone, which will already be initialized.

In any case, this function isn't used in Jikes RVM. Our boot sequence is already handling this OK.