PerlOnJava

May 6, 2026 · View on GitHub

Perl 5 on the JVM — single jar, batteries included

Build Status License

PerlOnJava compiles Perl to JVM bytecode — run existing Perl scripts on any platform with a JVM, with access to Java libraries. One jar file runs on Linux, macOS, and Windows — just add Java 22+. PerlOnJava is an independent project, not part of the Perl core distribution.

Features

Quick Start

git clone https://github.com/fglock/PerlOnJava.git
cd PerlOnJava
make

./jperl -E 'say "Hello World"'
./jperl -MJSON -E 'say encode_json({hello => "world"})'

Full Quick Start Guide — Installation options, database setup, Docker

Documentation

Getting StartedGuidesReference
InstallationDatabase AccessFeature Matrix
Quick StartWeb Server (PSGI)CLI Options
DockerJava IntegrationArchitecture
One-linersUsing CPAN ModulesTesting
Module PortingBundled Modules

About: Why PerlOnJava? | Roadmap | Changelog | Support | Security | AI Policy

About Perl

Perl is a high-level, general-purpose language known for text processing, system administration, and web development. Learn more: www.perl.org

Contributing

See CONTRIBUTING.md for build instructions, code organization, and how to submit pull requests.

License

Same terms as Perl 5 — Artistic License or GPL v1+. See LICENSE.md. Copyright (c) Flavio Glock