← На главную

Endive от Bytecode Alliance запускает Wasm на JVM без нативных бинарников

28.05.2026 16:40 · hackernews

Endive — это JVM-native рантайм для WebAssembly от организации Bytecode Alliance. Он умеет запускать Wasm-программы вообще без нативных зависимостей и без JNI. Endive работает везде, где есть JVM. В основе — простота и безопасность. Проект — форк Chicory от Dylibso, Inc., и разработчики благодарят Dylibso за инкубацию и фундамент.

Зачем вообще нужен ещё один Wasm-рантайм? Существуют зрелые варианты: v8, wasmtime, wasmer, wasmedge, wazero и другие. Они отлично запускают Wasm, но встраивать их в существующее Java-приложение проблематично. Все они написаны на C/C++/Rust и работают как нативный код. Это создаёт две проблемы.

Первая: если вы распространяете Java-библиотеку (jar, war), приходится прилагать к ней нативный объект под каждую целевую архитектуру и операционную систему. Матрица сборок разрастается, пропадает главное преимущество Java-кода — его простота доставки. Вторая: на рантайме приходится использовать FFI для выполнения модуля. Это фактически выход за пределы безопасной среды JVM — теряются гарантии памяти, безопасности и все штатные инструменты мониторинга.

Чистый JVM-рантайм решает обе проблемы. Все гарантии и инструменты остаются на месте.

У проекта четыре цели. Стать стандартным рантаймом для Wasm на JVM. Быть максимально безопасным. Работать в любом JVM-окружении без нативного кода, включая самые строгие окружения. Полностью поддерживать Core Wasm Spec. И делать интеграцию с Java (и другими языками хоста) простой и идиоматичной.

Разработка началась ещё в сентябре 2023 года в рамках проекта Chicory. Сейчас Endive — самостоятельный проект Bytecode Alliance. Если есть желание поучаствовать, разработчики зовут в Zulip-чат. Полный список организаций и проектов, которые уже используют Endive, — в файле ADOPTERS.md.

Читать оригинал →