'''IKVM.NET''' is an implementation of [[Java programming language|Java]] for [[Mono development platform|Mono]] and the [[Microsoft .NET]] Framework. It includes the following components:
* A Java Virtual Machine implemented in .NET
* A .NET implementation of the Java class libraries
* Tools that enable Java and .NET interoperability
With IKVM you can run compiled Java code ([[bytecode]]) directly on Microsoft .NET or Mono. The bytecode is converted on the fly to [[Common Intermediate Language|CIL]] and executed.
This is in contrast to [[J Sharp|J#]] which is one of the four languages that are supported by Microsoft's .NET implementation. J# is a Java syntax on .NET's framework, whereas IKVM is effectively a Java framework running on top of .NET's framework.
As of June 2005, the machine supports Java 1.4 with the exception of AWT and Swing. IKVM uses [[GNU classpath]] as its class library.