SkillAgentSearch skills...

Ristretto

Java Virtual Machine

Install / Use

/learn @theseus-rs/Ristretto
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"><img width="250" height="250" src="images/logo.svg"></p>

Ristretto

ci Documentation Code Coverage Benchmarks Latest version License Semantic Versioning

Embeddable Java Virtual Machine JVM implementation.

Getting Started

ristretto java can be installed using the following methods:

Linux / MacOS

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/theseus-rs/ristretto/releases/latest/download/ristretto_cli-installer.sh | sh

Windows

irm https://github.com/theseus-rs/ristretto/releases/latest/download/ristretto_cli-installer.ps1 | iex

For more information, and additional installations instructions (cargo, homebrew, msi), visit the ristretto site.

Features

  • Standard runtime classes backed by LTS versions of AWS Corretto.
  • Flexible class loading from directories, JARs, JMODs, JImage files, and URLs.
  • Built-in support for reading, writing, and strictly verifying Java bytecode.
  • Interpreter support for all Java byte codes including invokedynamic.
  • Fully asynchronous, non-blocking execution using Rust async/await for:
    • java.lang.Process
    • java.lang.Thread
    • java.io & java.nio
    • java.net
  • A low-pause, concurrent, and parallel mark-and-sweep garbage collector.
  • Parallel Just-In-Time (JIT) compilation for x86-64, aarch64, s390x, and riscv64 architectures.
  • WebAssembly (WASM) compilation support for single-threaded edge and browser deployments.
  • Native Maven POM (Project Object Model) parsing.

Limitations

Just-In-Time (JIT) Compilation

The JIT compiler only supports functions that use primitive type byte codes. The JIT compiler is not implemented for functions that use object byte code or call other functions.

Runtime Native Methods

The Java runtime requires hundreds of native methods. This project aims to provide Rust equivalents for these methods. If a native method is called that is not implemented, the program throw a java.lang.UnsatisfiedLinkError. Please submit a pull request, or open an issue if you need a specific native method implemented.

Security Manager

Support for the Security Manager is not implemented and there are no plans to implement it. The security manager has been deprecated; see: JEP 411

System.getSecurityManager() will always return null, and System.setSecurityManager() will throw an exception.

Finalizers

Support for finalizers is not implemented and there are no plans to implement it. Finalizers have been deprecated; see: JEP 421

License

Licensed under either of

  • Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
  • MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

View on GitHub
GitHub Stars49
CategoryDevelopment
Updated2d ago
Forks6

Languages

Rust

Security Score

95/100

Audited on Apr 1, 2026

No findings