Rozwiązywanie modułów za pomocą require.js i Java / Rhino

Próbuję pobrać require.js, aby załadować moduły po stronie serwera z Java 6 i Rhino.

Jestem w stanie załadować plik require.js w porządku. Rhino widzirequire() funkcjonować. Mogę powiedzieć, ponieważ Rhino skarży się, że nie może znaleźć funkcji, gdy się zmieniamrequire() do czegoś innegorequireffdkj().

Ale kiedy próbuję wymagać nawet prostego JS, jakhello.js

var hello = 'hello';

korzystając z jednej z następujących opcji:

require('hello');
require('./hello');

to nie działa. dostaję

Caused by: javax.script.ScriptException: sun.org.mozilla.javascript.internal.JavaScriptException: [object Error] (<Unknown source>#31) in <Unknown source> at line number 31
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:153)
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:167)
    at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:247)

mam mojehello.js na górze ścieżki klasy Java. Właśnie tam mamrequire.js także. Próbowałem się ruszyćhello.js wszędzie mogłem pomyśleć, że może się udać, włączając w to katalog główny mojego dysku twardego, katalog główny mojego katalogu użytkownika, katalog, z którego uruchamiam moją aplikację Java itp. Nic nie działa.

Spojrzałem na specyfikację CommonJS (http://wiki.commonjs.org/wiki/Modules/1.0) i mówi, że identyfikatory najwyższego poziomu (jakhello) są rozwiązywane z „konceptualnego korzenia przestrzeni nazw modułu”, podczas gdy względne identyfikatory (jak./hello) są rozwiązywane przeciwko modułowi wywołującemu. Nie jestem pewien, gdzie jest jedna z tych linii bazowych i podejrzewam, że to jest ten problem.

Jakieś sugestie? Czy mogę nawet używać require.js z Rhino?

EDYTOWAĆ: Myśląc, że muszę przygotować środowisko zgodnie z sugestią Pointy'ego w poniższym komentarzu, spróbowałem dokonać ocenyr.js także. (Próbowałem ocenić po ocenierequire.js, a potem jeszcze razrequire.js.) W obu przypadkach pojawia się błąd:

Caused by: javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "arguments" is not defined. (<Unknown source>#19) in <Unknown source> at line number 19
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:153)
    at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:167)
    at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:247)

„argumenty” wydają się być zmienną wr.js. Myślę, że to argumenty linii poleceń, więc nie sądzęr.js jest właściwą ścieżką do tego, co próbuję zrobić. Nie jestem jednak pewien.

questionAnswers(1)

yourAnswerToTheQuestion