Avatar.js und Projekt-Avatar

8

Im Kontext von Java 8 und Nashorn sehe ich zwei Projekte, die regelmäßig erwähnt werden.

Avatar.js und Projekt Avatar

Was ist die Beziehung dieser Projekte?

Avatar.js hat sehr wenig Dokumentation. Soweit ich es gesammelt habe, bietet es die Möglichkeit, Knoten-Anwendungen auf der JVM auszuführen.

Project Avatar scheint auf Avatar.js zu bauen. Der Anwendungsbereich scheint jedoch ein alternatives Web-Framework für Java EE 7 zu sein. Ist es auch möglich, Knotenprogramme (wie zB grunt) mit Project Avatar auszuführen?

    
jbandi 09.03.2014, 23:38
quelle

3 Antworten

10

Update: Projekt Avatar war offiziell angehalten 2015-02-12.

Avatar.js ist die Open-Source-Version dessen, was informell "node.jar" genannt wurde (siehe diesen Beitrag von der Avatar-js-Mailing-Liste). Mit anderen Worten, es ist eine NodeJS-kompatible API, die auf Nashorn läuft. Project Avatar scheint die Antwort von Oracle auf die NodeJS API zu sein und bietet eine alternative Plattform, die über Avatar.js auch Kompatibilität mit der NodeJS API und dem Ökosystem bietet.

Daher ist es nicht so, dass Project Avatar auf Avatar.js aufbaut, sondern "Avatar.js ist eine Komponente von Project Avatar. Nashorn ist die JavaScript-Engine, die beide verwendet." (Nochmals von dieser Beitrag ).

Die Avatar.js-Startseite enthält derzeit eine Liste bekannter Module, einschließlich "grunt". Es scheint, dass Project Avatar derzeit einen Build von Avatar.js als "avatar-js.jar" enthält, wie in der aktuellen neuesten commit , obwohl es 4 Monate alt ist. Ich denke also, die Antwort ist, dass der aktuelle Build von Project Avatar es Ihnen ermöglicht, Node-kompatible Module auszuführen.

Sie haben darauf hingewiesen, dass beide Initiativen keine Dokumentation haben und in den Kinderschuhen stecken. Zeit und Engagement der Gemeinschaft zeigen, wo sie am besten passen.

    
Johann 10.03.2014, 17:37
quelle
7

Tatsächlich ist Avatar.js in Project Avatar enthalten. Wenn ich mir die Maven POM-Dateien von Project Avatar anschaue, habe ich entdeckt, dass Avatar.js über das Maven-Repository von java.net verfügbar ist.

Gestützt auf diese Entdeckung schrieb ich einen Blog-Beitrag, wie man hier einfache Node.js-Apps mit Avatar.js ausführt: Running Node.js Anwendungen auf der JVM mit Nashorn und Java 8 >

Schritte für OSX hier wiederholt:

  1. Laden Sie avatar-js.jar vom java.net Maven Repo herunter. Aktuelle Version ist hier: Ссылка Beispieldatei: avatar-js-0.10.25-20140313.063039-43.jar
  2. Laden Sie die native Bibliothek avatar-js.dylib von java.net Maven herunter Repo. Aktuelle Version ist hier: Zypern
    Beispieldatei: libavatar-js-macosx-x64-0.10.25-20140312.062209-35.dylib
    Für Linux Sie würden die entsprechende .so-Datei von ../libavatar-js-linux-x64/0.10.25-SNAPSHOT/ herunterladen
    Für Windows würden Sie Laden Sie die entsprechende .dll-Datei herunter ../ libavatar-js-win-x64 / 0.10.25-SNAPSHOT /
  3. Benennen Sie die native Bibliothek in avatar-js.dylib um und benennen Sie das jar in um avatar-js.jar und lege beide in ein Verzeichnis namens dist.
  4. Erstellen Sie eine einfache Node.js-App in der Datei app.js.
  5. Führe den Befehl aus: java -Djava.library.path=dist -jar dist/avatar-js.jar app.js
jbandi 20.03.2014 23:25
quelle
3

Project Avatar befindet sich tatsächlich über Avatar.js ; Der Code ist mit Maven in unseren Build integriert. (Das Glas, das du gefunden hast, Johann, war alt, weil wir es nicht mehr benutzen - ich habe es nur angezapft, danke).

Und wir sind uns bewusst, dass unsere Dokumente mehr Arbeit benötigen. Im Moment konzentrieren wir uns auf das serverseitige JavaScript-Framework. Diese Services-Schicht bietet eine Laufzeitumgebung, die für das einfache Erstellen von REST-, WebSocket- und Server-Sent-Event-Endpunkten optimiert ist.

    
Bryan 20.03.2014 17:28
quelle