1、PHP调用exec函数后,居然没有任何结果。后来修改代码如下:
$command='gradle -v 2>&1'; //需要写入到$result中,才便于调试 exec($command,$result,$return_code); echo '===return code:'.$return_code; dump($result);
通过$return_code和result分析,发现没有找到gradle这个命令。所以有问题2.
2、明明下载了gradle,且在root权限下执行gradle -v是没有问题的。但是通过web.php访问却说没有这个东西。
后来cat $PATH后,确实在访问web.php的时候没有对应的路径。我把gradle安装在 var/www/gradle下面。
如何解决呢?
ln -s /var/www/gradle/bin/gradle /usr/local/bin/gradle。这样普通用户就能访问了。
解决java也是如此方法。
ln -s /var/www/java/bin/java /usr/local/bin/java 这样。
对应自己的即可。
本文介绍了使用PHP的exec函数调用Gradle遇到的问题及解决方法。问题在于无法找到Gradle命令,原因是web.php访问时的环境变量PATH中未包含Gradle路径。最终通过创建符号链接解决了普通用户访问Gradle的问题。
161

被折叠的 条评论
为什么被折叠?



