JNet: .NET gateway for JVM APIs
JNet is a .NET mirror of Java APIs.
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to email@example.com.
Scope of the project
This project aims to create a library to direct access, from .NET, all the features available in the Java Platform, this is the counterpart of JCOReflector.
There are many client libraries written to manage communication with Java. Conversely, this project use directly the Java packages giving more than one benefit:
- all implemented features are availables at no extra implementation costs, see JNet usage;
- avoids any third party communication protocol implementation;
- access all features made available from Java platform.
- V1.4.8+: From version 1.4.8 there is a new project, named JNetReflector (still in development phase), able to build C# gateway classes from JARs containing the JVM classes, exactly the same JCOReflector does for .NET in JVM.
- V1.4.9+: From version 1.4.9 there are two new projects:
- JNetPSCore: the core library for PowerShell development, it can be extended in other projects based on JNet;
- JNetPS: a PowerShell module to use JNet within a PowerShell shell.
- Direct access the JVM from any .NET application:
- Any Java/Scala/Kotlin/... class can be directly managed;
- No need to learn new APIs: we try to expose the same APIs in C# style;
- No extra validation cycle on protocol and functionality: bug fix, improvements, new features are immediately available;
- Documentation is shared;
- Dynamic code: it helps to write a Java/Scala/Kotlin/etc seamless language code directly inside a standard .NET application written in C#/VB.NET: look at this simple example and JNet APIs extensibility.
Have a look at the following resources:
- Release notes
Non Profit or University Commercial info: Professional or Enterprise
- Community Edition
- Commercial Edition
- Actual state
- JNet usage
- JNet APIs extensibility
- JNet CLI usage
- JNet Reflector usage
- JNet PowerShell usage