将JVM字节码翻译成JavaScript的AOT编译器TeaVM

  • 开源协议:Apache
  • 操作系统: Windows Linux OS X
  • 开发语言:Java
  • 项目所有者:konsoletyper
  • 收录时间:2017-07-14
  • 分享:
编辑评级
3

项目详细介绍

什么是TeaVM

TeaVM是一个将JVM字节码翻译成JavaScri

pt的AOT编译器(翻译器)。它和著名的GWT有一定相似之处,但必须指出TeaVM并不需要Java源代码,而只需要class文件(JVM字节码)。所以它能成功地用于Kotlin和Scala等基于JVM的语言。

为什么要用TeaVM

如果你喜欢Java,比如它的静态类型等,同时你又需要写大量在浏览器里用JavaScript实现的逻辑。TeaVM可提供必要的功能:

  • 预分析所有函数,只编译必须的部分

  • 生成高效的js代码,有时候比GWT生成的更快

  • 提供Java环境下的JS API和DOM API

  • 已经与Maven和Eclipse进行了集成

  • 生成代码调用关系图

  • 支持Java端和浏览器端调试

如何用TeaVM

你可以用Maven的archetype构建一个TeaVM模式的Java Web程序

mvn -DarchetypeCatalog=local \
  -DarchetypeGroupId=org.teavm \
  -DarchetypeArtifactId=teavm-maven-webapp \
  -DarchetypeVersion=0.4.3 \
  archetype:generate

然后你就能通过命令 mvn clean package 得到war文件

将它部署到Tomcat或者其它servlet容器中,或者直接解压这个war文件,打开里面的 index.html

为了简化开发,比如你喜欢使用Eclipse IDE,请参考 这份教程