IKVM
Other namesIKVM.NET
Original authorJeroen Frijters
DevelopersWindward Studios, Jerome Haltom
Stable release
8.15.0[1] Edit this on Wikidata / 6 December 2025; 6 months ago (6 December 2025)
Written inJava and C#
Operating systemCross-platform
TypeJava virtual machine, Java bytecode compiler and Java Library
Licensezlib License
Websiteikvm.org Edit this at Wikidata
Repository

IKVM (formerly IKVM.NET) is an implementation of Java for Common Language Infrastructure implementations such as Mono and the Microsoft .NET Framework. IKVM is free software, distributed under the zlib permissive free software license.[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 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 organization and finished .NET Core support.[5]

Components

edit

IKVM includes the following components:

IKVM 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 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

edit

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

Status

edit

IKVM 8 implements 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

edit

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

edit

References

edit
  1. ^ "Release 8.15.0". 6 December 2025. Retrieved 7 December 2025.
  2. ^ "License". www.ikvm.net. Archived from the original on 2020-02-22. Retrieved 2007-03-10.
  3. ^ "The End of IKVM.NET". Archived from the original on 2017-07-18. Retrieved 2017-07-22.
  4. ^ "IKVM is alive & well". www.windwardstudios.com.
  5. ^ "IKVM - Java Virtual Machine for .NET". GitHub. 27 August 2022.
  6. ^ "Sumatra Software b.v." Retrieved 2014-04-30.
  7. ^ "osdir mailing list archive for java.ikvm.devel". Archived from the original on 2012-12-27. Retrieved 2012-10-09.
  8. ^ "IKVM.Maven.Sdk". GitHub.
  9. ^ "IKVM.Maven.Sdk". www.nuget.org.
  10. ^ "IKVM Tutorial". ikvm.org. Windward Studios, Jerome Haltom. 2023.
edit

📚 Artikel Terkait di Wikipedia

Comparison of Java virtual machines

15.0". 6 December 2025. Retrieved 7 December 2025. "LICENSE.md". ikvmnet/ikvm. Retrieved 22 March 2025 – via GitHub. "Release 3.1.4 · JikesRVM/JikesRVM"

Dell M1000e

insert the 3 management-modules: one or two CMC modules and an optional iKVM module. At the bottom of the enclosure there are 6 bays for power-supply

Kernel panic

QR code. Kernel panic with drm_panic enabled Kernel panic as seen on an iKVM console Kernel panic with drm_panic enabled supporting logging to QR codes

ThinkSystem

the front of the server, as well as the ThinkServer Management Module with iKVM. The TS430 was announced in June 2011 by Lenovo with the following specifications:

Visual J Sharp

static void main(String[] args) { Application.Run(new HelloWorld()); } } IKVM – a free implementation of Java for Mono and .NET Framework "New and Upgraded

List of CLI languages

language, specific to the Unity game engine. Deprecated in favor of C#. IKVM A Java virtual machine that can be used to run Java and other JVM languages

GNU Classpath

applets from command line if they are not supported by the browser in use. IKVM, which integrates Java with the .NET Framework JNode, an operating system

MonoDevelop

JavaScript, TypeScript) Project templates for C#, Visual Basic, Boo, Java (IKVM) and C/C++ Code completion support for C#, code templates, code folding Customizable