Java für .NET (Update)

Das Tool Visual J#.NET übersetzt Java-Quellcode in die "Intermediate Language" von .NET.

In Pocket speichern vorlesen Druckansicht 299 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Karsten Violka

Microsofts Kampagne "Jump to .Net", mit der der Konzern Java-Entwickler zum Umstieg auf die .NET-Plattform motivieren möchte, ist um ein neues Tool bereichert worden. Kurz nach einem Bericht von The Register war es sogar einige Stunden auf einem Microsoft-Server aufgetaucht. Nun ist das Programm offiziell von Microsoft zum Download freigegeben worden. Das Werkzeug läuft nur mit der zweiten Beta-Version von Visual Studio.NET; die endgültige Version wird für Mitte nächsten Jahres erwartet.

Das Visual J#.NET genannte Tool stellt einen Compiler für Java dar, der keinen Byte-Code für eine Virtual Machine erzeugt, sondern Java-Quelldateien in die Intermediate Language (IL) von .NET übersetzt. Das Resultat läuft statt in einer Java Virtual Machine in Microsofts Common Language Runtime (CLR). Die Java-Klassen der JDK-Version 1.1.4 werden dabei mit Hilfe von Wrappern auf die entsprechenden .NET-Klassen umgeleitet. Die Microsoft-Dependance in Indien hat die Software entwickelt; sie soll laut der indischen Microsoft-Website auch dazu in der Lage sein, kompilierte .class-Files in deren .NET-Pendant der IL-Dateien zu konvertieren, um sie in der CLR auszuführen.

Sun dürfte von dieser Strategie wenig begeistert sein – schließlich steht die Betriebssystem-unabhängige Java-Plattform aus Programmiersprache, Bibliotheken und Virtual Machine als "Java 2 Enterprise Edition" in direkter Konkurrenz zu Microsofts neuer .NET-Strategie. Im Gegensatz zu J2EE, das eine Spezifikation darstellt, die von vielen Herstellern wie IBM, Oracle und BEA implementiert wurde, handelt es sich bei .NET um eine Produkt- und Marketing-Strategie, die ausschließlich von Microsoft kontrolliert wird und vor allem auf Windows zugeschnitten ist. Die neuen Features der Java Enterprise Edition, werden von J#.NET, das auf der alten Java Version 1.1.4 basiert, bislang nicht unterstützt. (kav)