jshell命令`/ open`能否相对于包含脚本的文件夹而不是工作目录工作?

时间:2017-10-15 21:40:58

标签: java java-9 jshell

我在同一文件夹/path/folder中有两个jshell脚本 script.jsh commons.jsh

script.jsh

/open commons.jsh

commons.jsh

System.out.println("commons.jsh loaded")
  • 如果我在/path/folder,我可以运行jshell script.jsh并且效果很好
  • 如果我在/path/folder/subfolder并且我运行jshell ../script.jsh,则会因File 'commons.jsh' for '/open' is not found而失败。

这有什么解决方案吗?换句话说,jshell命令/open可以相对于包含脚本的文件夹而不是工作目录工作吗?

这里有一个类似的问题是bash:Bash: How _best_ to include other scripts?

Edit1 :让问题更精确

Edit2 :这是我在撰写此问题时正在处理的真正的jshell脚本,这里提供的第一个脚本https://framagit.org/Gwendal/helpful-scripts/blob/3e8118970a6a412dfe0f199e93545745d890243f/jshell/dia2pdf.jsh打开了第二个脚本包含辅助方法https://framagit.org/Gwendal/helpful-scripts/blob/3e8118970a6a412dfe0f199e93545745d890243f/jshell/commons.jsh

1 个答案:

答案 0 :(得分:1)

好的,我已经看了很长时间了......

我知道的唯一方法就是添加“commons.jsh” -file的完整路径。 它有效。