关于绝对路径和相对路径的问题

我的一个探针程序,

  1. 需要调用其他服务的脚本,做停止启动的操作

  2. 调用自己维护的脚本检测一些进程和配置文件的情况

1的脚本是服务的脚本
2的脚本是探针程序自己的

触发探针做操作启动/停止或检查程序是由管理端发送消息来触发的
发送消息的时候会带上脚本的路径

脚本类型是不固定的,可能要跨平台,目前探针是用Java来实现的。

调用探针自己的脚本有没有必要提供全路径?

阅读 3.8k
1 个回答

Java的Runtime.exec(String command)会继承当前JVM的运行环境。

这个环境主要包含:(1)所有的环境变量,尤其是包括PATH;(2)当前工作目录。

调用其它Java程序,我想一般也会采用java executable.class这个命令,此时java命令由环境变量保证解析正确,文件名部分基于当前的工作目录也可以定位。

当然实际实现中,肯定还会有很多细节仍待商榷。但在以上的情况下,我感觉全路径是不必要的,至少不是一开始写脚本就有必要引入的(大可写相对路径行不通了再找原因)。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题