Suche
JavaScript lernen? Gar nicht nötig...

TeaVM: Einfach Web-Frontends mit Java erstellen

Gabriela Motroc

© Shutterstock.com / taa22

Java-Entwickler, die ein Web-Frontend von Grund auf erstellen müssen, können sich freuen: Mit dem Ahead-of-Time-Compiler TeaVM wird Java Bytecode ganz einfach zu JavaScript kompiliert. Für das Kompilieren von Projekten mit großen Java- oder Kotlin-Codebasen eignet sich TeaVM allerdings nicht.

Eine Werkzeugkiste für das Entwickeln von Java kann niemals groß genug sein. Wer Java-Anwendungen mit Web-Frontend baut, für den gibt es nun ein neues Tool, dass dabei behilflich ist. TeaVM ist ein Ahead-of-Time-Compiler, der Java Bytecode unkompliziert in JavaScript oder WebAssembly umwandelt.

Die Ähnlichkeit zu GWT ist unübersehbar. Allerdings ist der Unterschied, dass TeaVM sich in erster Linie auf existierende Compiler (javac, kotlinc, scalac) stützt. Diese Compiler produzieren Bytecode (*.class– oder *.jar-Dateien), TeaVM nimmt diesen dann und produziert daraus JavaScript-Code, wie die Projektbeschreibung offenbart.

If you are a Java (or Kotlin, or Scala) developer who used to write back-end code, TeaVM might be your choice. It’s true that a good developer (including Java developer) can learn JavaScript. However, to become an expert you have to spend a reasonable amount of your time.

TeaVM kann eingesetzt werden, wenn

  • man als Java-Entwickler Web-Frontends von Grund auf aufbauen möchte,
  • man bereits ein Java-basiertes Backend besitzt und Frontend-Code eng in die bestehende Entwicklungsinfrastruktur integrieren möchte,
  • man Java-Code aus dem Backend im Frontend wiederverwenden möchte und
  • man bereit ist, seinen Code umzuschreiben, damit er mit TeaVM kompatibel ist.

Die Vorteile von TeaVM

Ein Vorteil von TeaVM ist, dass von dem Compiler immer versucht wird, die natürliche und originale Struktur einer Methode zu rekonstruieren. In den meisten Fällen wird also JavaScript-Code produziert, der so auch manuell erstellt werden würde. Probleme wie aufgeblähte while/switch-Statements werden so verhindert. Die Macher von TeaVM loben zudem die Schnelligkeit des Tools und die Unterstützung von Threads. Mit dem Plug-in für die IntelliJ IDEA lässt sich der erstellte Code außerdem direkt in der Entwicklungsumgebung debuggen.

Lesen Sie auch: Der Joy Compiler: So wird aus Go ganz einfach JavaScript

Zusätzlich zu TeaVM gibt es das Flavour Framework, das ein Framework für das Schreiben von Single-Page Web-Anwendungen ist. Ein serverseitiges Framework ist Flavour allerdings nicht. Die Macher empfehlen, den Code für das Backend mithilfe „normaler“ JDKs wie OpenJDK oder dem Oracle JDK zu schreiben und seine dafür favorisierten Frameworks zu verwenden.

Weitere Informationen zu TeaVM gibt es auf der offiziellen Homepage des Projektes und auf GitHub.

Geschrieben von
Gabriela Motroc
Gabriela Motroc
Gabriela Motroc ist Online-Redakteurin für JAXenter.com. Vor S&S Media studierte Sie International Communication Management an der The Hague University of Applied Sciences.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.