java.lang.IllegalStateException in getSavedProperty when properties is empty

Max Schulze max.schulze at
Thu Sep 8 17:40:50 UTC 2016


I am trying to implement my own virtual machine and making use of the
rt.jar .

I am following the language and vm specification and currently have not
come across formalities that require implementation/prefill of 

When the IntegerCache is being initialized, it calls getSavedProperty
which doesn't like savedProps.isEmpty() at all
(jdk/src/share/classes/sun/misc/ and throws the exception

1) What are the minimal properties that have to be initialized for the
runtime to be functioning? I found sun.misc.Version.init(), but is there
any specification of what the bare minimum would be?

2) There is a function initializeSystemClass()
(jdk/src/share/classes/java/lang/ that calls
initProperties(props).  This will be called by the JVM at

> hotspot/src/share/vm/runtime/thread.cpp:1048: 
> JavaCalls::call_static(&result, klass,
> vmSymbols::initializeSystemClass_name(),

Shouldn't it be part of the JVM Specification to call this
initializeSystemClass on thread setup then, if at all it wants to be
able to run the rt.jar?



PS : talking about 1.8.0_91

(On a side-note, there is activity around moving sun.misc.VM to
jdk.internal.misc for JEP 260/JDK9, but which doesn't change above
mentioned problems)


More information about the core-libs-dev mailing list