ノードJSアプリケーションは、Linux、Windows、Solarisで正常に動作しています。しかし、Node JSはV8エンジンをサポートしていないため、SPARCシステムでは動作しません。SPARCのAvatar.js
Myselfには、JAVA 8組み込みJavaScriptエンジンNashronを使用して、JVM(Java Virtual Machine)でNODE JSプログラムを実行するために使用されるAVATARという外部プロジェクトが見つかりました。
公式サイトでは、Linux用の私(.so)ファイル、プログラムをコンパイルしたWindows用の(.dll)ファイルを提供しています。これらのファイル(.so & .dll)を使用すると、LinuxでノードJSプログラムを正常に実行しました.JAVA 8のウィンドウ。
SPARCプラットフォームで実行するために同じlinux(.so)ファイルを使用しました。
エラーが発生しました:私はアバターを使用してJVMで実行するために使用NODE JSでの基本的なHTTPサーバプログラムを添付している
-bash-4.1$ java -Djava.library.path=dist -jar dist/avatar-js.jar HttpServer.js
Exception in thread "main" java.lang.UnsatisfiedLinkError: /export/home/thiru/LinuxAVatar/dist/libavatar-js.so: ld.so.1: java: fatal: /export/home/thiru/LinuxAVatar/dist/libavatar-js.so: wrong ELF data format: ELFDATA2LSB (Possible cause: endianness mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1854)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at com.oracle.libuv.LibUV.<clinit>(LibUV.java:33)
at com.oracle.avatar.js.Server.<init>(Server.java:166)
at com.oracle.avatar.js.Server.<init>(Server.java:140)
at com.oracle.avatar.js.Server.<init>(Server.java:128)
at com.oracle.avatar.js.Server.main(Server.java:122)
。
あなたは、以下のポイントをいくつかの可能性を提供してもらえ:
は、SPARCのそれの.soファイルのいずれかのビルドは、
が2.Is、SPARCシステム上
1.Running NODE JS私はSPARCのNashronの代わりに他のJava Scriptエンジンを使用しています(例:Spider Monkey)。公式サイトのために
リンク:アバターを実行するためのhttps://avatar-js.java.net/
手順:のOracle Solaris 11.3 SPARC
JAVAバージョン: Javaのバージョン "1.8.0_60" のOracle Solaris OSのhttp://blog.jonasbandi.net/2014/03/running-nodejs-applications-on-jvm-with.html
バージョンJavaホットスポットTM 64ビットサーバVM(ビルド25.60-b23、混合モード)
ありがとうございました。
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("Hello World\n");
});
server.listen(8000);
console.log("Server running at http://127.0.0.1:8585/");
返信いただきありがとうございます。 NashornではなくJavascript Enginesを使用するのが賢明でしょうか?それはNODE JSとSPARCで動作しますか? –
それはあなたが何をしたいかによって異なります。 Node.jsコードを実行したい場合は、Node.jsをSparcで実行する方法を調べる必要があります(Sparcプラットフォームでの経験はありません)。 JavaとJavaScriptを組み合わせたい場合は、Nashornを使用することもできますが、ノードAPIを削除する必要があります。 – dasniko
ありがとう@dasniko –