如何给Runtime.exec提供相对路径

时间:2014-01-24 10:28:34

标签: java process exec embedded-resource runtime.exec

大家好我试图在help file(.chm)目录下运行netbeans并借助此代码

Process proc=   Runtime.getRuntime().exec("hh.exe src/MOVECG_Pro.chm");

但是当我尝试在netbeans之外运行时会出现问题,因为jar src文件夹里面没有。请帮我正确编码

1 个答案:

答案 0 :(得分:1)

您已将chm文件放在源代码目录中。显然,当您运行JAR时,该目录不存在。我想你想要一个包含捆绑在其中的帮助文件的独立JAR。

由于exec委托本机平台将命令字符串解释为可以启动子进程的东西,您可以想象透明地访问隐藏在JAR存档内的文件会有麻烦。

因此,要么单独提供帮助文件,要么在运行时编写将从JAR 提取帮助文件的代码。然后将其位置传递给hh.exe

我还要做一个一般性陈述:既然你在这里编写了一个Java程序,它应该是独立于平台的,那么你使用Windows专用帮助文件的方法并不完全适用于本书。