Я играю с Rhino , и мне удалось использовать классы Java из stdlib, но не из кода Java, который я скомпилировал здесь.
Например, это работает нормально:
print(new java.util.Date());
Но с NanoHTTPD (один файл .java, нет пространства имен, та же папка), мне совсем не повезло:
js> new Packages.NanoHTTPD()
js: "<stdin>", line 4: uncaught JavaScript runtime exception: TypeError: [JavaPackage NanoHTTPD] is not a function, it is object.
at <stdin>:4
Я уверен, что это что-то простое.Чего мне не хватает?
РЕДАКТИРОВАТЬ : я запускаю это так:
$ CLASSPATH=. java -jar rhino.jar
или это:
$ java -classpath . -jar rhino.jar
Или япереместил NanoHTTPD.java в папку «./nano», добавил package nano;
в начало файла, скомпилировал его и заменил «.»с "nano" в вышеупомянутых назначениях classpath.
Любым способом, которым я это делаю, в интерпретаторе я вижу:
js> java.lang.System.getProperty("java.class.path")
/Users/me/blah/rhino.jar