使用PHP构建gradle Android Project

时间:2015-12-25 22:23:00

标签: php android shell gradle command

我正在开发一个php函数来执行一个构建gradle项目Android的命令。

但要明确我想创建一个小系统可以修改android项目源并通过构建gradle来生成APK项目。

我做了很多关于它的搜索,我发现了一些接近的问题,但没有用这个命令。

这是我的功能。这很简单,我已经在我的服务器中安装了gradle工具,并且命令在我的终端中成功运行

function generator(){
    exec('cd /home/my/AndroidStudioProjects/BetaProject/;./gradlew assembleDebug 2>&1',$out,$err);
    var_dump($out); 
    var_dump($err); 
}

但是,当我用php执行它时,它给了我这个:

  

string(955)“线程中的异常”main“java.lang.RuntimeException:   java.io.FileNotFoundException:   /usr/sbin/.gradle/wrapper/dists/gradle-2.4-all/3i2gobhdl0fm2tosnn15g540i0/gradle-2.4-all.zip.lck   (没有这样的文件或目录)在   org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:78)   在org.gradle.wrapper.Install.createDist(Install.java:47)at   org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129)   在   org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)   引起:java.io.FileNotFoundException:   /usr/sbin/.gradle/wrapper/dists/gradle-2.4-all/3i2gobhdl0fm2tosnn15g540i0/gradle-2.4-all.zip.lck   (没有这样的文件或目录)在java.io.RandomAccessFile.open0(Native   方法)在java.io.RandomAccessFile.open(RandomAccessFile.java:316)at at   java.io.RandomAccessFile。(RandomAccessFile.java:243)at   org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:49)   ......还有3个“

如果有任何解决方案或建议,我会很高兴。

由于

2 个答案:

答案 0 :(得分:1)

试试这个:

function generator(){

        exec('sh /home/my/AndroidStudioProjects/BetaProject/gradlew assembleDebug 2>&1',$out,$err);
        var_dump($out); 
        var_dump($err); 
}

答案 1 :(得分:0)

我遇到了同样的问题,我只是通过更改这些文件所在目录的所有者来授予 apache 执行这些脚本的权限来解决此问题

它会是这样的:

sudo chown -R www-data your-directory/ 

我希望这对你有用。