我正在尝试获取在Rhino中执行的脚本的路径。我希望不必将目录作为第一个参数传递。我什至没有如何获得它的线索。我目前正在通过以下方式致电Rhino

java -jar /some/path/to/js.jar -modules org.mozilla.javascript.commonjs.module /path/to/myscript.js


并希望myscript.js将/ path / to识别为目录名,而不管我从何处运行此脚本。关于StackOverflow的唯一其他相关问题和建议是将/ path / to作为参数传递,但这不是我正在寻找的解决方案。

最佳答案

做你想做的事是不可能的。

检测JavaScript解释程序正在运行的脚本源的功能不是ECMAScript语言规范或Rhino shell extensions的一部分。

但是,您可以编写一个包装程序可执行程序,该程序将脚本路径作为其参数,并在Rhino中执行脚本(例如,通过调用适当的主类),并提供脚本位置作为环境变量(或类似变量)。

10-05 21:04
查看更多