Ready made templates to create applications based on JNet (.NET suite for Java™/JVM™). The templates are ready made starting points, all information and APIs are available in the official website https://jnet.masesgroup.com/
$ dotnet add package MASES.JNet.TemplatesJNet is a comprehensive suite of libraries and tools to use Java™/JVM™ APIs (Java, Scala, Kotlin, ...) and .NET side-by-side.
💡 Legacy Integration: Still running Java 8 in production? JNet enables integration with modern .NET applications without requiring Java upgrades—saving months of migration work and significant costs.
| JNet | JNet.Templates | JNetCLICore | JNetPSCore | JNetCLI | JNetReflector | JNetPS |
|---|---|---|---|---|---|---|
JNet is a suite, curated by MASES Group, can be supported by the open-source community.
Its primary scope is to support other, public or internal, MASES Group projects: open-source community and commercial entities can use it for their needs and support this project, moreover there are dedicated community and commercial subscription plans.
The repository code and releases may contain bugs, the release cycle depends from critical discovered issues and/or enhancement requested from this or other projects.
Looking for the help of experts? MASES Group can help you design, build, deploy, and manage applications mixing .NET and JVM™ enabled languages.
This project aims to create a set of libraries and tools 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:
So, for example, do you want an ArrayList? Just write in C# a line of code like this:
Java.Util.ArrayList<string> alist = new Java.Util.ArrayList<string>();
See JNet usage for a comprehensive example.
Do you like the project?
Do you want to help us?
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to coc_reporting@masesgroup.com.
Java.Lang.String, by default, instead of string (System.String) (see https://github.com/masesgroup/JNet/issues/363)Yes! JNet fully supports Java 8 (JRE 1.8.0_161 or later) through Java 25. This is critical for enterprises with legacy Java 8 systems in production.
No! JNet works with your existing Java 8 bytecode without any modifications. You can integrate legacy Java 8 systems with modern .NET applications immediately.
Oracle provides Extended Support for Java 8 until December 2030. Many vendors (Amazon Corretto, Azul, Red Hat) provide free long-term support. JNet gives you flexibility: integrate now with Java 8, migrate Java when your timeline permits.
Yes! Java is backward compatible. A newer JVM can execute bytecode compiled with older Java versions.
Example: Using Java 17 JVM, you can call:
All in the same .NET process, with zero migration needed for older code!
Simple rule: Use the highest Java version required by any of your dependencies. That JVM will run all older bytecode versions.
No! Just upgrade the JVM to Java 17 (or whatever version the new library requires). Your Java 8 bytecode will continue working without any code changes.
This is Java's backward compatibility guarantee in action.
You'll get an UnsupportedClassVersionError. Java doesn't support
forward compatibility - older JVMs cannot run newer bytecode.
Solution: Upgrade to Java 17 JVM. Your Java 8 code will still work!
JNet uses JCOBridge, and its features, to obtain many benefits:
JCOBridge 2.6.* can be used for free without any obligations; you need to purchase a commercial license, or uninstall the software, if you have direct or indirect incomes from the product usage.
Java:
Note: Works with Oracle JDK, OpenJDK, Amazon Corretto, Azul Zulu, and other compatible distributions.
.NET:
Java 8 Extended Support runs until December 2030. JNet provides a migration path: integrate Java 8 systems with modern .NET now, migrate Java when ready.
Have a look at the following JCOBridge resources:
| JCOBridge | 2.5.* series | 2.6.* series |
|---|---|---|
| JNet | > 1.5.* series | > 2.6.* series |
| Release notes | Link | Link |
| Community Edition | Conditions | Conditions |
| Commercial Edition | Information | Information |