-2

我正在尝试通过shell_execphp 执行命令。但我遇到了一个错误。

我的代码:

shell_exec('groovy log_analyser1.groovy').

但我收到了这个错误:

sh: groovy: command not found
4

2 回答 2

0

终于得到了输出。我已将 groovy 目录从 /root 移动到 /usr/share/。然后在我的 php 文件中给出了常规路径。现在它工作正常。设置java环境变量。

我设置了这个putenv("JAVA_HOME=/usr/share/java/jdk1.7.0_03/");

$result = shell_exec('/usr/share/groovy/2.4.3/bin/groovy log_analyser1.groovy');

感谢克弗里克的帮助。回显$结果;

于 2015-03-27T14:32:07.700 回答
0

将 groovy 安装放在一个理智的地方(/usr/local或者/opt你的运营团队允许的任何地方),然后使用绝对路径调用 groovy。

由于您当前已安装在您的root用户~中,因此其他用户(例如您的 php/httpd 运行的用户)无权访问它(有充分的理由)。

即使您将使用与您的 php/httpd 相同的用户并在那里使用 GVM,您也将很难使其正常工作,因为 GVM 依赖于一些脚本来运行。~/.gvm/groovy/<version>因此,只需从所有用户都可以轻松访问的 GVM 文件 ( ) 中复制。

于 2015-03-27T13:53:18.590 回答