Skip to content

xamarin/java.interop

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

Java.Interop

Java.Interop is a binding of the Java Native Interface for use from managed languages such as C#, and an associated set of code generators to allow Java code to invoke managed code.

This allows one to bridge code running on .NET's CLR and code running on a Java VM.

Note this does not mean that one can run Java code on .NET, or vice-versa.

Java.Interop currently does not ship independently. It is shipped as part of Microsoft's Xamarin.Android product, available via Visual Studio or .NET 6+. However, it is designed to be fully independent of Android and should be usable by other Java implementations. For other uses, please compile and distribute from source.

Some additional context for this project is documented in the Motivation and Architecture pages.

Building

  • The main branch is configured to build with .NET 7, available here.
  • The release/6.0.3xx branch is configured to build with .NET 6.

Java.Interop.sln must first run some "preparatory" tasks before it can be built:

dotnet build -t:Prepare

Once Java.Interop.sln has been prepared, it can be built in Visual Studio 2022 or with dotnet:

dotnet build

Additional build options are documented here.

Feedback and Contributing

This project welcomes issues and PRs.

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.

License

Copyright (c) .NET Foundation Contributors. All rights reserved. Licensed under the MIT License.

About

Java.Interop provides open-source bindings of Java's Java Native Interface (JNI) for use with .NET managed languages such as C#

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published