Rahul Sharma (Editor)

IKVM.NET

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
Jeroen Frijters

Operating system
  
Cross-platform

Written in
  
Java and C#

Stable release
  
7.2 / December 10, 2012 (2012-12-10)

Preview release
  
IKVM.NET 8.0 Release Candidate 1 / January 15, 2015 (2015-01-15)

Type
  
Java Virtual Machine, Java bytecode compiler and Java Library

IKVM.NET is an implementation of Java for Mono and the Microsoft .NET Framework. IKVM is free software, distributed under a permissive free software licence.[1]

Contents

IKVM.NET includes the following components:

  • A Java Virtual Machine implemented in .NET
  • A .NET implementation of the Java class libraries
  • A tool that translates Java bytecode (JAR files) to .NET IL (DLLs or EXE files).
  • Tools that enable Java and .NET interoperability
  • With IKVM.NET you can run compiled Java code (bytecode) directly on Microsoft .NET or Mono. The bytecode is converted on the fly to CIL and executed.

    This is in contrast to J#. J# is a Java syntax on the .NET framework, whereas IKVM.NET is effectively a Java framework running on top of .NET's framework.

    Jeroen Frijters is the main contributor to IKVM.NET. He is Technical Director of Sumatra Software, based in The Netherlands.

    Name

    The "IKVM" portion of the name is a play on "JVM" in which the author "just took the two letters adjacent to the J".

    Status

    As of June 2007, the machine supports Java 1.6. AWT and Swing are partially supported. IKVM uses OpenJDK as its class library.

    IKVM has very limited support for Abstract Window Toolkit (AWT). For this reason, it cannot run ImageJ and other apps that depend on AWT. Implementing AWT in IKVM.NET is a low priority.

    References

    IKVM.NET Wikipedia