从Rhino JS控制台中运行CD会产生异常

时间:2011-09-06 15:47:02

标签: windows rhino command-prompt

当从js.jar控制台内部尝试runCommand(“cd”,“..”)时,抛出IOException。
我相信这是因为在命令提示符中,CD命令实际上内置在控制台中,而不是单独的.exe文件。 runCommand(“notepad”)工作正常,并且.exe​​可以在通常位置的类路径中找到。

有解决方法吗?

我在想通过java而不是通过命令提示符更改目录它可能会解决这个问题,但我不记得如何从java中做到这一点,但我打算试图弄明白。

总结:有没有办法在Windows上的Rhino JS控制台中运行“cd”?

谢谢, L -

1 个答案:

答案 0 :(得分:0)

这里要解决多个问题;这取决于你想要做什么。

runCommand实际上运行可执行程序。 cd不是Windows上的可执行文件;它是命令shell中的命令。所以你需要执行更像这样的东西:

runCommand("cmd","/c","cd <target-directory>")

但是,底层Java运行时不允许您实际更改工作目录。见this StackOverflow discussion。炮轰cd只会改变子进程的目录(运行cd的进程),这可能不是你想要的。