src/JavaVM.st
branchjk_new_structure
changeset 1251 14f94a33376d
parent 1250 3904fc7212b4
child 1253 0ce45e884e08
--- a/src/JavaVM.st	Fri Dec 09 12:46:11 2011 +0000
+++ b/src/JavaVM.st	Fri Dec 09 13:27:34 2011 +0000
@@ -1682,7 +1682,10 @@
      being already loaded (used with jdk >= 1.2)"
     
     OperatingSystem isUNIXlike ifTrue: [
-        SimulatedNativeLibs := #( 'libawt.so' 'libnet.so' 'libcmm.so' 'libzip.so' 'libmanagement.so'  'libjpeg.so' ).
+        SimulatedNativeLibs := #( 'libawt.so' 'libnet.so' 'libcmm.so' 'libzip.so' 
+                                  'libmanagement.so'        "/ Management Beans - req'd by Tomcat
+                                  'libjpeg.so' 'liblcms.so' "/ Some UI stuff - req'd by Tomcat !!?!!
+                                    ).
         ^ self.
     ].
     OperatingSystem isMSWINDOWSlike ifTrue: [
@@ -1695,8 +1698,8 @@
      self initializeSimulatedNativeLibs"
 
     "Modified: / 27-01-1998 / 18:43:10 / cg"
-    "Modified: / 01-04-2011 / 23:02:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 03-11-2011 / 19:00:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+    "Modified: / 09-12-2011 / 12:03:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 initializeSimulatedNativeMemory
@@ -1720,7 +1723,9 @@
 !
 
 initializeSystemPropertiesInto: props 
-    | cpu  os  jHome |
+
+   | cpu  os |
+
     "/ use JAVA compatible cpu-name
     cpu := OperatingSystem getCPUType.
     cpu = 'i386' ifTrue: [ cpu := 'ix86' ].
@@ -1728,29 +1733,63 @@
         os := OperatingSystem getOSType.
         os := os asUppercaseFirst.
     ].
-    props at: 'java.version' put: '1'.
-    props at: 'java.vendor' put: 'eXept Software AG & SWING Reseach Group'.
-    props at: 'java.vendor.url'
-        put: 'http://www.exept.de & http://swing.fit.cvut.cz'.
-    props at: 'java.vm.name' put: 'Smalltalk/X'.
-    (jHome := self defaultJAVAHome) notNil ifTrue: [
-        props at: 'java.home' put: (jHome asFilename pathName).
-    ].
-    props at: 'java.class.version' put: '1'.
-    props at: 'java.class.path' put: (self defaultCLASSPATH).
-    props at: 'java.ext.dirs' put: (self defaultExtDirs).
-    props at: 'os.name' put: os.
-    props at: 'os.arch' put: cpu.
-    props at: 'os.version' put: '1'.
-    props at: 'file.separator' put: (Filename separator asString).
-    props at: 'path.separator' put: OperatingSystem pathSeparator asString.
-    props at: 'line.separator' put: (Character cr asString).
-    props at: 'user.name' put: (OperatingSystem getLoginName).
-    props at: 'user.home'
-        put: (OperatingSystem getHomeDirectory ? Filename currentDirectory name).
-    props at: 'user.dir'
-        put: (UserPreferences current javaTestsDirectory asFilename 
-                / 'libjava' asFilename) pathName.
+
+    props addPairsFrom:
+        {
+            'java.runtime.name'             . 'OpenJDK Runtime Environment' .
+            'sun.boot.library.path'         . '/usr/lib/jvm/java-6-openjdk/jre/lib/amd64' .
+            'java.vm.version'               . '20.0-b11' .
+            'java.vm.vendor'                . 'eXept Software AG & SWING Research Group' .
+            'java.vendor.url'               . 'http://www.exept.de & http://swing.fit.cvut.cz' .
+            'path.separator'                .  OperatingSystem pathSeparator asString. 
+            'java.vm.name'                  . 'Smalltalk/X 6.2.1 VM' .
+            'file.encoding.pkg'             . 'sun.io' .
+            'sun.java.launcher'             . 'SUN_STANDARD' .
+            'user.country'                  . 'US' .
+            'sun.os.patch.level'            . 'unknown' .
+            'java.vm.specification.name'    . 'Java Virtual Machine Specification' .
+            'user.dir'                      . Filename currentDirectory pathName .
+
+            'java.awt.graphicsenv'          . 'sun.awt.X11GraphicsEnvironment' .
+            'java.endorsed.dirs'            . '/usr/lib/jvm/java-6-openjdk/jre/lib/endorsed' .
+            'os.arch'                       . cpu .
+            'java.io.tmpdir'                . Filename tempDirectory pathName .
+            'line.separator'                . Character cr asString .
+            'java.vm.specification.vendor' . 'Sun Microsystems Inc.' .
+            'os.name'                       . os .
+            'sun.jnu.encoding'              . 'UTF-8' .
+            'java.library.path'             . self defaultJavaLibraryPath.
+            'java.specification.name'       . 'Java Platform API Specification' .
+            'java.class.version'            . '50.0' .
+            'sun.management.compiler'       . 'Smalltalk/X jinterpreter' .
+            'os.version'                    . OperatingSystem getSystemInfo at: #version .
+            'user.home'                     . Filename homeDirectory pathName .
+            'user.timezone'                 . '' .
+            'java.awt.printerjob'           . 'sun.print.PSPrinterJob' .
+            'file.encoding'                 . 'UTF-8' .
+            'java.specification.version'    . '1.6' .
+            'java.class.path'               . self defaultCLASSPATH.
+            'user.name'                     . OperatingSystem getLoginName .
+            'java.vm.specification.version' . '1.0' .
+            "'sun.java.command'            . 'SystemProperties' ."
+            'java.home'                     . '/usr/lib/jvm/java-6-openjdk/jre' .
+            'sun.arch.data.model'           . '32' .
+            'user.language'                 . Smalltalk language .   
+            'java.specification.vendor'     . 'Sun Microsystems Inc.' .
+            'java.vm.info'                  . 'Smalltalk/X 6.2.1' .
+            'java.version'                  . '1.6' .
+            'java.ext.dirs'                 . self defaultExtDirs .
+            'sun.boot.class.path'           . self defaultSunBootLibraryPath.
+            'java.vendor'                   . 'Sun Microsystems Inc.' .
+            'file.separator'                . Filename separatorString .
+            'java.vendor.url.bug'           . 'http://java.sun.com/cgi-bin/bugreport.cgi' .
+            'sun.io.unicode.encoding'       . 'UnicodeLittle' .
+            'sun.cpu.endian'                . 'little' .
+            'sun.desktop'                   . 'gnome' .
+            'sun.cpu.isalist'               . '' .
+        }.
+
+
     
     "/ props at:'user.dir'           put:(Filename currentDirectory pathName).
     "/props at:'awt.toolkit'        put:(self defaultWindowingToolKit).
@@ -1760,10 +1799,7 @@
     
     "/ new with jdk 1.1.8
     "/ undocumented ?
-    
-    props at: 'file.encoding.pkg' put: 'sun.io'.
-    props at: 'file.encoding' put: 'UTF-8'.
-    
+
     "/ suppress copyright view in appletViewer ...
     
     props at: 'appletviewer.version' put: '1.1'.
@@ -1778,8 +1814,6 @@
     "/ new with jws 2.0 ...
     "/props at:'jws.startcmd'         put:'jws.showwin.mainide'.
     
-    props at: 'java.library.path' put: self defaultJavaLibraryPath.
-    props at: 'sun.boot.library.path' put: self defaultSunBootLibraryPath.
     props at: 'stx.libjava.tomcat.dir'
         put: (JavaLibraries directory / 'tomcat6') pathName.
     
@@ -1792,8 +1826,8 @@
 
     "Created: / 03-01-1998 / 14:26:39 / cg"
     "Modified: / 27-01-2000 / 02:20:18 / cg"
-    "Modified: / 31-08-2011 / 20:03:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified (format): / 03-11-2011 / 12:40:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+    "Modified: / 09-12-2011 / 02:04:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 initializeVM
@@ -2684,29 +2718,17 @@
 
 defaultSunBootLibraryPath
 
-    | dirs |
-    dirs := OrderedCollection new
-            add: Java release javaHome asFilename / 'lib';
-            add: Java release javaHome asFilename / 'lib' / 'amd64';
-            add: Java release javaHome asFilename / 'lib' / 'i386';
-            add: Java release javaHome asFilename / 'jre' / 'lib' ;
-            add: Java release javaHome asFilename / 'jre' / 'lib' / 'amd64'  ;
-            add: Java release javaHome asFilename / 'jre' / 'lib' / 'i386' ;
-            yourself.
-    OperatingSystem isMSWINDOWSlike ifTrue:[
-        dirs
-            add: Java release javaHome asFilename / 'bin'.
-    ].
-
-
-    ^String streamContents:
-        [:path|
-        (dirs select:[:d|d exists])
-            do:[:d|path nextPutAll:d pathName]
-            separatedBy:[path nextPut: OperatingSystem pathSeparator]]
-
-    "
-        JavaVM defaultJavaLibraryPath
+    |s|
+
+    s := '' writeStream.
+    Java release classPath 
+        do:[:p | s nextPutAll:p ]
+        separatedBy: [s nextPut: OperatingSystem pathSeparator].
+
+    ^ s contents    
+
+    "    
+        JavaVM defaultSunBootLibraryPath
     "
 
     "Created: / 10-12-2010 / 14:37:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"