# IKVM

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/IKVM
> Markdown URL: https://mediated.wiki/source/IKVM.md
> Source: https://en.wikipedia.org/wiki/IKVM
> Source revision: 1340363399
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

"IKVM.NET" redirects here. For iKVM (Keyboard/Video/Mouse over IP), see [KVM switch § KVM over IP (iKVM)](/source/KVM_switch#KVM_over_IP_(iKVM)).

IKVM Other names IKVM.NET Original author Jeroen Frijters Developers Windward Studios, Jerome Haltom Stable release 8.15.0[1] / 6 December 2025; 6 months ago (6 December 2025) Written in Java and C# Operating system Cross-platform Type Java virtual machine, Java bytecode compiler and Java Library License zlib License Website ikvm.org Repository github.com/ikvmnet/ikvm

**IKVM** (formerly **IKVM.NET**) is an implementation of [Java](/source/Java_(software_platform)) for [Common Language Infrastructure](/source/Common_Language_Infrastructure) implementations such as [Mono](/source/Mono_(software)) and the [Microsoft](/source/Microsoft) [.NET Framework](/source/.NET_Framework). IKVM is [free software](/source/Free_software), distributed under the [zlib](/source/Zlib_License) [permissive free software license](/source/Permissive_free_software_licence).[2]

Work started on IKVM early in 2000 to assist migration of a Java-based reporting package from Sumatra to Microsoft .NET. The original developer, Jeroen Frijters, discontinued work on IKVM in 2015.[3] In 2018, [Windward Studios](/source/Windward_Studios) forked IKVM.NET to continue development on the open-sourced IKVM.[4] In 2022 Jerome Haltom and others picked up the work on a new [GitHub](/source/GitHub) organization and finished [.NET Core](/source/.NET_Core) support.[5]

## Components

IKVM includes the following components:

- A [Java virtual machine](/source/Java_virtual_machine) (JVM) implemented in [.NET](/source/Microsoft_.NET)

- A .NET implementation of the Java class libraries

- A tool that translates Java bytecode ([JAR files](/source/JAR_file)) to .NET IL ([DLLs](/source/Dynamic-link_library) or [EXE files](/source/Portable_Executable)).

- Tools that enable Java and .NET interoperability

IKVM can run compiled Java code ([bytecode](/source/Bytecode)) directly on Microsoft .NET or Mono. The bytecode is converted on the fly to [CIL](/source/Common_Intermediate_Language) and executed.

By contrast [J#](/source/J_Sharp) is a Java syntax on the .NET framework, whereas IKVM is effectively a Java framework running on top of the .NET framework.

Jeroen Frijters was the main contributor to IKVM. He is Technical Director of Sumatra Software, based in the Netherlands.[6]

## Name

The "IKVM" portion of the name is a play on "[JVM](/source/Java_virtual_machine)" in which the author "just took the two letters adjacent to the J".[7]

## Status

IKVM 8 implements [Java 8](/source/Java_8).

The IKVM organization also maintains IKVM.Maven.Sdk,[8] 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.[9]

## Example

The following is a .NET application written in Java, which prints the list of files in the current directory.

Note that in IKVM, the System.* namespace in .NET is written as cli.System.*.[10]

package org.wikipedia.examples;

import cli.System.IO.*;

public class Example {
    public static void main(String[] args) {
        String[] files = Directory.GetFiles(".");
        for (String file : files) {
            System.out.println(file);
        }
    }
}

## See also

- [Free and open-source software portal](https://en.wikipedia.org/wiki/Portal:Free_and_open-source_software)
- [Computer programming portal](https://en.wikipedia.org/wiki/Portal:Computer_programming)

- [Free Java implementations](/source/Free_Java_implementations)

- [J#](/source/J_Sharp)

## References

1. **[^](#cite_ref-wikidata-044ce8d472ca119a9f764b57f4ff7d80626d1a90-v20_1-0)** ["Release 8.15.0"](https://github.com/ikvmnet/ikvm/releases/tag/8.15.0). 6 December 2025. Retrieved 7 December 2025.

1. **[^](#cite_ref-2)** ["License"](https://web.archive.org/web/20200222015515/http://www.ikvm.net/license.html). *www.ikvm.net*. Archived from [the original](http://www.ikvm.net/license.html) on 2020-02-22. Retrieved 2007-03-10.

1. **[^](#cite_ref-3)** ["The End of IKVM.NET"](https://web.archive.org/web/20170718180358/http://weblog.ikvm.net/2017/04/21/TheEndOfIKVMNET.aspx). Archived from [the original](http://weblog.ikvm.net/2017/04/21/TheEndOfIKVMNET.aspx) on 2017-07-18. Retrieved 2017-07-22.

1. **[^](#cite_ref-4)** ["IKVM is alive & well"](https://www.windwardstudios.com/blog/ikvm-is-alive-well). *www.windwardstudios.com*.

1. **[^](#cite_ref-5)** ["IKVM - Java Virtual Machine for .NET"](https://github.com/ikvmnet/ikvm). *[GitHub](/source/GitHub)*. 27 August 2022.

1. **[^](#cite_ref-6)** ["Sumatra Software b.v."](http://www.sumatrasoftware.com/) Retrieved 2014-04-30.

1. **[^](#cite_ref-7)** ["osdir mailing list archive for java.ikvm.devel"](https://web.archive.org/web/20121227142442/http://osdir.com/ml/java.ikvm.devel/2007-07/msg00013.html). Archived from [the original](http://osdir.com/ml/java.ikvm.devel/2007-07/msg00013.html) on 2012-12-27. Retrieved 2012-10-09.

1. **[^](#cite_ref-8)** ["IKVM.Maven.Sdk"](https://github.com/ikvmnet/ikvm-maven). *[GitHub](/source/GitHub)*.

1. **[^](#cite_ref-9)** ["IKVM.Maven.Sdk"](https://www.nuget.org/packages/IKVM.Maven.Sdk/). *www.nuget.org*.

1. **[^](#cite_ref-10)** ["IKVM Tutorial"](https://ikvm.org/ikvm/legacy/tutorial). *ikvm.org*. Windward Studios, Jerome Haltom. 2023.

## External links

- [Official website](https://ikvm.org/)

- [ikvm](https://github.com/ikvmnet/ikvm) on [GitHub](/source/GitHub)

v t e Java virtual machines (comparison) Sun, Oracle HotSpot C1 C2 GraalVM Graal Substrate discontinued Maxine Squawk KVM Major implementations HotSpot GraalVM IKVM Jikes RVM OpenJ9 LeJOS Embedded LeJOS ART Others IcedTea more… Discontinued Harmony Dalvik GCJ JamVM JOP Juice Jupiter Kaffe SableVM Mika VM MSJVM SuperWaba TakaTuka NanoVM TinyVM Wonka VM more…

---
Adapted from the Wikipedia article [IKVM](https://en.wikipedia.org/wiki/IKVM) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/IKVM?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
