通过浏览器使用 PHP 可执行文件执行 gradlew 失败


Failed executing gradlew using PHP exec through browser

我想用PHP运行gradlew。我尝试的是使用 exec(), shell_exec,passthru .我在一个名为"build.php"的PHP脚本中执行了这些命令。我尝试从浏览器或 curl 调用脚本并收到此错误

Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: /var/www/.gradle/wrapper/dists/gradle-2.2.1-all/6dibv5rcnnqlfbq9klf8imrndn/gradle-2.2.1-all.zip.lck (No such file or directory)

但是当我使用 php build.php 从命令行调用它时,它运行良好。我

我需要通过浏览器的用户操作执行gradlew命令。我的问题:什么可能导致此错误以及如何摆脱它?

谢谢。

这是因为您在/var/www中没有名为 .gradle 的文件夹创建文件夹并授予a+rw权限:

mkdir /var/www/.gradle
chmod a+rw /var/www/.gradle