[フレーム]
BT

InfoQ Software Architects' Newsletter

A monthly overview of things you need to know as an architect or aspiring architect.

View an example

We protect your privacy.

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Unlock the full InfoQ experience

Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with content, and download exclusive resources.

Log In
or

Don't have an InfoQ account?

Register
  • Stay updated on topics and peers that matter to youReceive instant alerts on the latest insights and trends.
  • Quickly access free resources for continuous learningMinibooks, videos with transcripts, and training materials.
  • Save articles and read at anytimeBookmark articles to read whenever youre ready.

Topics

Choose your language

InfoQ Homepage News Update on IKVM, a JVM for the Common Language Runtime

Update on IKVM, a JVM for the Common Language Runtime

Jan 20, 2010 1 min read

Write for InfoQ

Feed your curiosity. Help 550k+ global
senior developers
each month stay ahead.
Get in touch

The goal of IKVM is to add Java support to the Common Language Runtime in two ways. In dynamic mode Java byte code is reinterpreted as IL code at runtime. In static mode, Java source code is compiled into IL instead of Java byte code. Running in either mode, IKVM seeks to be a nearly full implementation of the Java specification. Aside from some libraries that are not yet implemented, the major difference is that class loading in static mode will not exactly match the JVM behavior.

IKVM consists of a number of components.

  • ikvm: A started executable used in dynamic mode. One could think of it as the CLR version of java.exe
  • ikvmc: A static compiler that is used to compile Java classes and jars into .NET assemblies under the static mode paradigm.
  • ikvmstub: This tool is used to create class files that act as stubs for .NET classes that a Java program needs.
  • IKVM.Runtime.dll: This is the VM runtime itself. In addition to the just-in-time byte code to IL converter it handles the mapping between the Java and .NET object model.
  • IKVM.OpenJDK.*.dll: This is the “compiled version of the Java class libraries, plus some additional IKVM.NET specific code.”
  • ikvm-native.dll: A unmanaged C library needed for the JNI interface.
  • IKVM.AWT.WinForms.dll: This contains the AWT and Swing peers.

IKVM is currently in release candidate 3. You can see the current list of known issues and incompatibilities on the IKVM blog.

Rate this Article

Adoption
Style

This content is in the Java topic

Related Topics:

Related Content

The InfoQ Newsletter

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

We protect your privacy.

BT

AltStyle によって変換されたページ (->オリジナル) /