我正在运行OSX 10.6 Snow Leopard,已下载rhino1_7R2并将其移至/ usr / local /
我知道(虽然这会阻止它被操作系统更新改变),但这可能不是它的最佳位置,并想象它可能需要连接到Java安装。
我对Rhino的用途是从终端命令行运行JavaScript,我正在寻求帮助,因为我相信我缺乏Java知识来快速解决这个问题。
我希望得到任何帮助或建议链接,
感谢保罗
答案 0 :(得分:7)
之前我没有使用过Rhino,但我很快就从Mozilla手中抢到了1.7R2并试了一下。它似乎是一个标准的Java jar可执行文件。与Java相比,它的位置无关紧要(应该如此)。
在您的情况下,您需要做的就是执行它,如下所示(来自Terminal.app):
java -jar /usr/local/rhino1_7R2/js.jar
我注意到这个特定程序实际上启动了一个交互式JS shell,这可能不是你想要的(但它可能是),但如果你用-help运行它,你会看到它的完整用法:
java -jar /usr/local/rhino1_7R2/js.jar -help
答案 1 :(得分:6)
请注意,自Java 6以来,脚本API内置于标准Java库中,您实际上不再需要像Mozilla Rhino这样的第三方库。 (事实上,Java 6中的脚本API是Mozilla Rhino的改编版本。)
有关包javax.script
的信息,请参阅API documentation,并参阅:Scripting for the Java Platform。
Mac OS X 10.6(Snow Leopard)上的Java默认版本是Java 6,因此您应该能够使用标准脚本API而无需安装任何特殊内容。
注意:我发现我的Mac上安装了jrunscript
,但由于某种原因,它不在PATH中,因此如果我在终端中输入jrunscript
,则无法找到它。在我的文件系统中,它在这里:
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Commands/jrunscript
答案 2 :(得分:2)
正如其他答案中提到的jrunscript&评论,它是一个方便的工具,但它不支持完整的Javascript 1.5。
$ jrunscript -q
Language ECMAScript 1.6 implemention "Mozilla Rhino" 1.6 release 2
从Rhino 1.6R6开始,完全支持Javascript 1.5,Rhino 1.7支持JavaScript 1.7。
Rhino 1.6Rx应该支持E4X,但奇怪的是这个简单的例子在jrunscript中失败了:
$ jrunscript -e 'toto = <tata/>'
script error: sun.org.mozilla.javascript.internal.EvaluatorException: erreur de
syntaxe (<string>#1) in <string> at line number 1
我遇到麻烦使jrunscript与John Resig的env.js(允许在Rhino脚本中加载jQuery,Prototype和其他库)一起工作,因为1.6R2没有实现get&amp;设置属性(它们在1.6R6 IIRC中添加)。
有关Rhino版本的更多信息:
所以我认为Rhino 1.7R2对你来说更好,因为你已经拥有它。只需使用别名或其他东西来缩短命令行。