On Win32 platforms using the Jace DLL,
jace::helper::onThreadDestruction() is called each time
a thread runs down. The first thing this function does
is call getJavaVM().
If the Java VM has not been initialized yet,
getJavaVM() throws an exception. This is caught, logged
to std::cerr, and otherwise ignored by Jace's DllMain.
However, the overhead and stderr noise is unnecessary.
In our application, the Java runtime is initialized
only when (and if) a specific subset of the program's
functionality is first used.
This can be easily fixed by changing the call to
getJavaVM() with javaVM, and returning immediately if
it is NULL.