IKVM 8.2.0-prerelease2138
IKVM - Java Virtual Machine for .NET
IKVM.NET is an implementation of Java for the Microsoft .NET Framework and .NET Core.
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
- With IKVM.NET you can run compiled Java code (bytecode) directly on Microsoft .NET Framework or .NET Core. The bytecode is converted on the fly to CIL and executed.
Documentation
See the tutorial to get started or IKVM.NET In Details for a more in-depth look.
Support
- .NET Framework 4.6.1 and higher
- .NET Core 3.1 and higher
- .NET 5 and higher
- Java SE 8
IkvmReference
IKVM includes build-time support for translating Java libraries to .NET assemblies. Install the IKVM
package in a project that wants to reference Java libraries. Use the IkvmReference
ItemGroup
to indicate which Java libraries your project required.
Example:
<ItemGroup>
<IkvmReference Include="..\..\ext\helloworld-2.0.jar" />
</ItemGroup>
The output assembly will be generated as part of your project's build process. Additional metadata can be added to IkvmReference
to customize the generated assembly.
Identity
: The identity of theIkvmReference
item can be either a) path to a JAR file b) path to a directory or c) an otherwise unimportant name.AssemblyName
: By default theAssemblyName
is generated using the rules defined by theAutomatic-Module-Name
specification. To override this, do so here.AssemblyVersion
: By default theAssemblyVersion
is generated using the rules defined by theAutomatic-Module-Name
specification. To override this, do so here.DisableAutoAssemblyName
: Iftrue
disables detection ofAssemblyName
.DisableAutoAssemblyVersion
: Iftrue
disables detection ofAssemblyVersion
.FallbackAssemblyName
: IfAssemblyName
is not provided or cannot be calculated, use this value.FallbackAssemblyVersion
: IfAssemblyVersion
is not provided or cannot be calculated, use this value.Compile
: Optional semi-colon separated list of Java class path items to compile into the assembly. By default this value is theIdentity
of the item, if the identity of the item is an existing JAR file or directory (not yet supported). MSBuild globs are supported to reference multiple JAR or .class files.Sources
: Optional semi-colon separated list of Java source files to use during documentation generation. (not yet supported)References
: Optional semi-colon separated list of otherIkvmReference
identity values to specify as a reference to the current one. For instance, iffoo.jar
depends onbar.jar
, include both asIkvmReference
items, but specify the identity ofbar.jar
on theReferences
metadata offoo.jar
.Debug
: Optional boolean indicating whether to generate debug symbols (non-portable). By default this is determined based on the overall setting of the project.- All other metadata supported on the
Reference
MSBuild item group definition.
IkvmReference
is not transitive. Including it in one project and adding a dependency to that project from a second
project will not result in the same reference being available on the second project. Instead add the reference to
each project.
For each project to resolve to the same resulting assembly ensure their settings are identical.
<ItemGroup>
<IkvmReference Include="helloworld.jar">
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</IkvmReference>
<IkvmReference Include="helloworld-2.jar">
<AssemblyName>helloworld-2</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<References>helloworld.jar</References>
<Aliases>helloworld2</Aliases>
</IkvmReference>
</ItemGroup>
No packages depend on IKVM.
.NET Framework 4.6.1
- SharpZipLib (>= 1.3.3)
- System.Memory (>= 4.5.5)
.NET Core 3.1
- System.Threading.AccessControl (>= 6.0.0)
- System.Security.Principal.Windows (>= 5.0.0)
- System.Security.Permissions (>= 6.0.0)
- System.Security.Cryptography.Pkcs (>= 6.0.1)
- System.Security.AccessControl (>= 6.0.0)
- System.Runtime.Loader (>= 4.3.0)
- System.Runtime.InteropServices (>= 4.3.0)
- System.Runtime (>= 4.3.1)
- System.Memory (>= 4.5.5)
- System.IO.Compression (>= 4.3.0)
- System.Drawing.Common (>= 6.0.0)
- System.Data.Odbc (>= 6.0.0)
- System.Configuration.ConfigurationManager (>= 6.0.0)
- SharpZipLib (>= 1.3.3)
- Microsoft.Win32.Registry (>= 5.0.0)
- Microsoft.Extensions.DependencyModel (>= 6.0.0)
- System.IO.FileSystem.AccessControl (>= 5.0.0)
Version | Downloads | Last updated |
---|---|---|
8.11.0-pre.1 | 3 | 12/17/2024 |
8.10.3 | 8 | 11/06/2024 |
8.10.2 | 5 | 11/27/2024 |
8.10.1 | 5 | 11/11/2024 |
8.10.0 | 5 | 12/02/2024 |
8.10.0-pre.1 | 5 | 11/27/2024 |
8.9.1 | 6 | 11/12/2024 |
8.9.0 | 3 | 12/03/2024 |
8.9.0-pre.3 | 5 | 12/02/2024 |
8.9.0-pre.2 | 3 | 11/29/2024 |
8.9.0-pre.1 | 5 | 11/14/2024 |
8.8.1 | 5 | 12/01/2024 |
8.8.0 | 22 | 05/03/2024 |
8.8.0-pre.1 | 4 | 11/14/2024 |
8.7.6 | 5 | 11/11/2024 |
8.7.5 | 3 | 11/26/2024 |
8.7.4 | 4 | 11/14/2024 |
8.7.3 | 4 | 11/14/2024 |
8.7.2 | 4 | 11/12/2024 |
8.7.1 | 7 | 11/26/2024 |
8.7.0 | 6 | 11/14/2024 |
8.7.0-pre.3 | 5 | 11/14/2024 |
8.7.0-pre.2 | 0 | 10/16/2023 |
8.7.0-pre.1 | 5 | 11/12/2024 |
8.6.4 | 6 | 11/12/2024 |
8.6.3-tags-8-6-3-pre-24.1 | 3 | 11/30/2024 |
8.6.3-tags-8-6-3-pre-11.1 | 6 | 11/14/2024 |
8.6.2 | 6 | 11/14/2024 |
8.6.1 | 4 | 11/14/2024 |
8.6.0 | 5 | 12/10/2024 |
8.5.2 | 4 | 11/14/2024 |
8.5.1 | 5 | 11/12/2024 |
8.5.0 | 8 | 07/03/2023 |
8.5.0-prerelease0001 | 12 | 05/29/2024 |
8.5.0-develop2513 | 5 | 12/02/2024 |
8.5.0-develop1599 | 4 | 11/14/2024 |
8.5.0-develop0690 | 4 | 11/14/2024 |
8.4.5 | 3 | 12/09/2024 |
8.4.5-prerelease0001 | 5 | 11/26/2024 |
8.4.4 | 3 | 11/26/2024 |
8.4.4-prerelease0001 | 2 | 12/06/2024 |
8.4.3 | 4 | 11/12/2024 |
8.4.2 | 7 | 06/01/2024 |
8.4.1 | 0 | 12/28/2022 |
8.4.0 | 4 | 11/14/2024 |
8.4.0-prerelease0001 | 4 | 11/12/2024 |
8.3.3 | 4 | 11/14/2024 |
8.3.2 | 4 | 12/03/2024 |
8.3.1 | 4 | 11/12/2024 |
8.3.0 | 2 | 12/06/2024 |
8.3.0-prerelease0395 | 7 | 11/12/2024 |
8.3.0-prerelease0394 | 2 | 12/06/2024 |
8.2.3 | 5 | 11/28/2024 |
8.2.2-prerelease0856 | 3 | 12/04/2024 |
8.2.2-prerelease0553 | 5 | 11/12/2024 |
8.2.2-prerelease0396 | 4 | 11/12/2024 |
8.2.2-prerelease0241 | 9 | 05/29/2024 |
8.2.2-prerelease0163 | 5 | 11/25/2024 |
8.2.2-prerelease0106 | 3 | 11/25/2024 |
8.2.2-prerelease0051 | 3 | 12/02/2024 |
8.2.1 | 9 | 08/15/2022 |
8.2.0 | 7 | 11/20/2024 |
8.2.0-prerelease3420 | 3 | 11/29/2024 |
8.2.0-prerelease2777 | 3 | 11/26/2024 |
8.2.0-prerelease2138 | 5 | 12/11/2024 |
8.2.0-prerelease1515 | 3 | 12/07/2024 |
8.2.0-prerelease0911 | 5 | 11/29/2024 |
8.2.0-prerelease0899 | 4 | 12/03/2024 |
8.2.0-prerelease0892 | 5 | 11/27/2024 |
8.2.0-prerelease0809 | 5 | 11/27/2024 |
8.2.0-prerelease0392 | 4 | 11/28/2024 |
8.1.5717 | 8 | 08/17/2022 |
7.4.5196 | 13 | 05/29/2024 |
7.3.4830 | 13 | 05/29/2024 |
7.2.4630.5 | 8 | 05/29/2024 |
7.1.4532.2 | 10 | 05/29/2024 |
0.46.0.1 | 5 | 05/29/2024 |