# Monday, February 2, 2009
« New Development Snapshot | Main | IKVM 0.38 Update 1 RC 1 »
IKVM 0.38 Update 1 RC 0

Since there isn't yet a schedule for when 0.40 will be available, I decided to release an update of 0.38 that includes recent bug fixes.


  • Changed version to
  • Fixed the stack trace when an unwrapped java.lang.Error (or subclass) escapes from a static initializer.
  • It turns out that we really should create an MBeanServer in sun.management.ManagementFactory.createPlatformMBeanServer(), even if we don't populate it with anything useful, applications might still want to register their own MBeans. This fix allows Derby to work.
  • Added helpful message to ClassCastException generated for ghost array casts.
  • Added check for constructor with missing body in map.xml.
  • Removed over eager state checking from java.util.zip.Deflater. Fixes Lucene issue.
  • Fixed enclosing method discovery to work for ReflectionOnly assemblies. This allows ikvmstub to work with ikvmc generated assemblies.
  • Always emit an explicit method override if we've mangled the name/sig, because we can't predict whether it will be needed or not (without keeping track of the mangling in the base classes) and the cost is minimal since this doesn't happen all that often.
  • Miranda method should use mangled name (if the name is mangled).
  • Fixed pointer detection to work for types with multiple indirection levels.
  • If the last call site of a subroutine wasn't reachable, the return switch would fall through potentially causing the code to be unverifiable.
  • The check for unloadable types on the stack indexed the stack in the wrong order.
  • Fixed exception wrapping for java.security.AccessController.doPrivileged().
  • Fixed tracer to only add a trace listener in executables.

Binaries available here: ikvmbin-
Sources (+ binaries): Sources: ikvm-, classpath-0.95-stripped.zip, openjdk6-b12-stripped.zip

Monday, February 2, 2009 7:01:55 AM (W. Europe Standard Time, UTC+01:00)  #    Comments [4]
Monday, February 2, 2009 11:23:39 AM (W. Europe Standard Time, UTC+01:00)

Have the hard-coded key bugs been fixed? You probably don't notice it as the hard-coded values happen to match your signing key - however, it's a pain in the ass for those of us without your key. See http://svn.debian.org/wsvn/pkg-cli-apps/packages/ikvm/trunk/debian/patches/00-use_ikvm-key_for_JniInterface.patch?op=file&rev=0&sc=0 and http://svn.debian.org/wsvn/pkg-cli-apps/packages/ikvm/trunk/debian/patches/02-use_ikvm-key_for_openJDKConfiguration.patch?op=file&rev=0&sc=0
Monday, February 2, 2009 11:25:43 AM (W. Europe Standard Time, UTC+01:00)
No, sorry. They have been fixed in 0.39, so in the future the problem wil go away.
Thursday, February 5, 2009 8:56:02 PM (W. Europe Standard Time, UTC+01:00)
I love the idea of one day installing Mono + IKVM and being able to run .Net and Java apps.
But I'm unsure on how really usable it is.
Could you run a java testsuit that shows API conformance with each release or on a weekly/monthly basis?

Or better yet, have a series of apps that are just started? Perhaps something like wine's appDB with a rating system?
Wednesday, February 11, 2009 4:08:00 AM (W. Europe Standard Time, UTC+01:00)
Thanks for fixing JMX issue with Derby :-)

Andy Malakov
Comments are closed.