TeaVM

将 Java 字节代码编译为 JavaScript、WebAssembly 和 C 语言。「Compiles Java bytecode to JavaScript, WebAssembly and C」

Github stars Tracking Chart

TeaVM

.github/workflows/ci.yml
Maven Central
Download
Discord

See documentation at the project web site.

Useful links:

Building TeaVM

Simply clone source code (git clone https://github.com/konsoletyper/teavm.git)
and run Gradle build (./gradlew publishToMavenLocal or gradlew.bat publishToMavenLocal).
You should build samples separately, as described in corresponding readme file.

Useful Gradle tasks

  • :tools:classlib-comparison-gen:build – build Java class library compatibility report.
    result is available at: tools/classlib-comparison-gen/build/jcl-support

Embedding TeaVM

If you are not satisfied with Maven, you can embed TeaVM in your program
or even create your own plugin for any build tool, like Ant or Gradle.
The starting point for you may be org.teavm.tooling.TeaVMTool class from teavm-tooling artifact.
You may want to go deeper and use org.teavm.vm.TeaVM from teavm-core artifact, learn how TeaVMTool initializes it.
To learn how to use TeaVMTool class itself, find its usages across project source code.
You most likely encounter Maven and IDEA plugins.

Please, notice that these APIs for embedding are still unstable and may change between versions.

License

TeaVM is distributed under Apache License 2.0.
TeaVM does not rely on OpenJDK or code or other (L)GPL code.
TeaVM has its own reimplementation of Java class library, which is either implemented from scratch or
based on non-(L)GPL projects:

If you want to contribute code to implementation of Java class library,
please make sure it's not based on OpenJDK or other code licensed under (L)GPL.

Feedback

More information is available at the official site: https://teavm.org.

Ask your questions by email: info@teavm.org. Also, you can report issues on a project's
issue tracker.

Main metrics

Overview
Name With Ownerkonsoletyper/teavm
Primary LanguageJava
Program languageJava (Language Count: 8)
Platform
License:Apache License 2.0
所有者活动
Created At2013-09-23 20:04:15
Pushed At2025-05-04 10:02:25
Last Commit At2025-05-04 12:01:00
Release Count20
Last Release Name0.11.0 (Posted on )
First Release Name0.1 (Posted on 2014-03-19 17:45:40)
用户参与
Stargazers Count2.8k
Watchers Count98
Fork Count278
Commits Count3.4k
Has Issues Enabled
Issues Count623
Issue Open Count164
Pull Requests Count248
Pull Requests Open Count10
Pull Requests Close Count89
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private