|Original author(s)||Jeroen Frijters|
|Developer(s)||Windward Studios, Jerome Haltom|
8.2.1 / July 24, 2022
|Written in||Java and C#|
|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 the zlib permissive free software license.
The original developer, Jeroen Frijters, discontinued work on IKVM in 2015. In 2018, Windward Studios forked IKVM.NET to continue development on the open-sourced IKVM. In 2022 Jerome Haltom and others picked up the work on a new GitHub organization and finished .NET Core support.
IKVM.NET includes the following components:
- A Java virtual machine (JVM) 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
IKVM.NET can run compiled Java code (bytecode) directly on Microsoft .NET or Mono. The bytecode is converted on the fly to CIL and executed.
By contrast J# is a Java syntax on the .NET framework, whereas IKVM.NET is effectively a Java framework running on top of the .NET framework.
Jeroen Frijters was the main contributor to IKVM.NET. He is Technical Director of Sumatra Software, based in the Netherlands.
The "IKVM" portion of the name is a play on "JVM" in which the author "just took the two letters adjacent to the J".
As of June 2007[update], the machine supported Java 1.6. AWT and Swing are partially supported. IKVM uses OpenJDK as its class library.
IKVM has 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.
IKVM 8 implements Java 8.
The IKVM organization also maintains IKVM.Maven.Sdk, an extension to the .NET PackageReference system that allows direct references to and transpiling of Maven artifacts. IKVM.Maven.Sdk is also available on NuGet.org.
- ^ "IKVM 8.2.1". GitHub. Retrieved 2022-09-20.
- ^ "License". www.ikvm.net. Archived from the original on 2020-02-22.
- ^ "The End of IKVM.NET". Retrieved 2017-07-22.
- ^ "IKVM is alive & well". www.windwardstudios.com.
- ^ "IKVM - Java Virtual Machine for .NET". GitHub. 27 August 2022.
- ^ "Sumatra Software b.v." Retrieved 2014-04-30.
- ^ "osdir mailing list archive for java.ikvm.devel". Archived from the original on 2012-12-27. Retrieved 2012-10-09.
- ^ "IKVM.NET Home Page". Archived from the original on 2012-05-05. Retrieved 2008-07-16.
- ^ "IKVM.NET developers' blog". Retrieved 2013-03-18.
- ^ "IKVM.NET Users' Guide". Retrieved 2013-03-18.
- ^ "IKVM.Maven.Sdk". GitHub.
- ^ "IKVM.Maven.Sdk 1.0.1". www.nuget.org.