大家好,我正在尝试借助此代码从 netbeans
目录运行 帮助文件(.chm)
Process proc= Runtime.getRuntime().exec("hh.exe src/MOVECG_Pro.chm");
但是当我尝试在 netbeans
外部运行时出现问题,因为内部 jar src
文件夹不存在。请帮助我如何正确编码
最佳答案
您已将 chm
文件放入源代码目录中。显然,当您运行 JAR 时,该目录不存在。我想您想要一个独立的 JAR,其中包含捆绑在其中的帮助文件。
由于 exec
委托(delegate) native 平台将命令字符串解释为可以用来启动子进程的内容,因此您可以想象,透明地访问隐藏在 JAR 存档中的文件会遇到麻烦。
因此,要么单独提供帮助文件,要么编写代码在运行时从 JAR 中提取帮助文件。然后将其位置传递给 hh.exe
。
让我也做一个一般性的声明:由于您在这里编写一个 Java 程序,它应该是独立于平台的,所以您使用特定于 Windows 的帮助文件的方法并不完全按照书本。
关于java - 如何为 Runtime.exec 提供相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21330251/