18 · Módulos
Java / Kotlin · JVM
Compartilhe uma JVM para Java e Kotlin, com imports nativos, objetos vivos e dependências Maven. Preparação de fontes e editor exige as ferramentas correspondentes; aplicações preparadas precisam de um JRE compatível. JVM 8, 11 e 23 estão verificadas em Windows x64.
Nesta página
Execute localmente com o plugin e runtime correspondentes. Estes exemplos não rodam no playground do navegador.
Java / Kotlin / JVM.
// parity-timeout-ms:300000
use plugin jvm::{kotlin}
extern kotlin fn greet(name: str) -> str {
return "Olá, $name!"
}
extern kotlin fn exact(value: int) -> int {
return value
}
extern kotlin fn relay(callback: fn(int) -> int) -> int {
return callback(41L)
}
extern kotlin async fn later(value: int) -> int {
import kotlin.coroutines.suspendCoroutine
import kotlin.coroutines.resume
return suspendCoroutine { continuation ->
Thread { continuation.resume(value + 1L) }.start()
}
}
let value = 40
let answer: int = extern kotlin { value + 2L }
print(greet("Kotlin"))
print(exact(9007199254740993))
print(relay(|number| number + 1))
print(answer)
print(await later(41))
// expected:
// Olá, Kotlin!
// 9007199254740993
// 42
// 42
// 42
Requer a CLI/host do Zolo — abra no playground ou rode localmente.
Preparação e distribuição
O empacotamento sem fontes pode preservar artefatos estrangeiros preparados, mas não remove dependências de runtime ou plataforma. Hospedagem na VM, native e LLVM está coberta; bindings estrangeiros rejeitam alvos WebAssembly não suportados. A aceitação recente dos providers cobre Windows x64. Python está verificado especificamente com CPython 3.12; outras plataformas precisam de validação própria.