# Monday, April 9, 2007
« New Snapshot | Main | Memory Mapped Files »
New Snapshot

The GNU Classpath 0.95 release branch has been created (0.94 was skipped), so it shouldn't be long now before I will release IKVM 0.34, but before that here's a final snapshot containing everything that will be in 0.34.


  • Integrated current GNU Classpath cvs version.
  • .NET "generic class loaders" now return something (mildly) sensible when toString() is called on them.
  • ikvmc no longer warns about generic stubs.
  • ikvmstub now has WHIDBEY conditional code to properly determine if a class is a generic type instance (instead of the name based hack).
  • Fixed .NET generic type name mangling bug (nested generic types were double encoded).
  • Added support for loading .NET generic type stubs.
  • Fixed several .NET generic type loading bugs.
  • Fixed ikvm.runtime.Util.getInstanceTypeFromClass() to return null instead of throw an exception when it is called on a "dynamic only" class.
  • Changed ikvmstub to use java.util.zip instead of SharpZipLib.
  • Fixed index/length overflow detection in arraycopy_primitive_n methods.
  • Fixed JNI init args and thread attach string conversions.
  • Added workaround for .NET bug that caused OverflowException when compiling a class with an initialized final instance field of type char with a value > 32K.

Binaries available here: ikvmbin-0.33.2655.zip

Monday, April 9, 2007 10:19:22 AM (W. Europe Daylight Time, UTC+02:00)  #    Comments [1]
Sunday, April 15, 2007 8:43:28 AM (W. Europe Daylight Time, UTC+02:00)

I'm new to IKVM.NET (this is the first snapshot I've tried). I'm following the instructions in another blog entry to setup IKVM as a JRE in Eclipse.

One of the steps is to run ikvmstub on some version of mscorlib.dll.

I'm running Windows XP SP2 (with all updates applied) on a 32-bit machine. ikvmstub works fine on C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll
but when running it on C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll I get this error:

Unhandled Exception: System.BadImageFormatException: The format of the file 'mscorlib.dll' is invalid.
File name: "mscorlib.dll"
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Boolean isStringized, Evidence assemblySecurity, Boolean throwOnFileNotFound, Assembly locationHint, StackCrawlMark& stackMark)
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Boolean stringized, Evidence assemblySecurity, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm)
at NetExp.Main(String[] args)

=== Pre-bind state information ===
LOG: Where-ref bind. Location = C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll
LOG: Appbase = C:\ikvm\bin\
LOG: Initial PrivatePath = NULL
Calling assembly : (Unknown).

LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
Comments are closed.