[英]Add groovy script to run through gradle android
I want to run some groovy scripts before gradle builds debug apk in Android. 我想在gradle在Android中构建调试apk之前运行一些常规脚本。
task batchTask(type: JavaExec) {
description 'running tasks'
exec {
commandLine './Batch.groovy'
}
}
added this to build.gradle(app) 将此添加到build.gradle(app)
apply plugin: 'groovyx.grooid.groovy-android'
android{
...
dependsOn {
batchTask
}
}
dependencies {
...
compile 'org.codehaus.groovy:groovy:2.4.0:grooid'
}
added this to build.grade(android) 将此添加到build.grade(android)
dependencies { ... classpath 'org.codehaus.groovy:gradle-groovy-android-plugin:0.3.6' } 依赖项{... classpath'org.codehaus.groovy:gradle-groovy-android-plugin:0.3.6'}
I keep getting the error Error:Cause: error=13, Permission denied 我不断收到错误错误:原因:错误= 13,权限被拒绝
stack trace 堆栈跟踪
15:24:22.688 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: STARTING 15:24:22.689 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Waiting until process started: command './Batch.groovy'.
15:24:22.688 [DEBUG] [org.gradle.process.internal.DefaultExecHandle]更改状态为:STARTING 15:24:22.689 [DEBUG] [org.gradle.process.internal.DefaultExecHandle]等待过程开始:命令' ./Batch.groovy'。 15:24:22.693 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED 15:24:22.693 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Process 'command './Batch.groovy'' finished with exit value -1 (state: FAILED) 15:24:22.695 [DEBUG] [org.gradle.configuration.project.BuildScriptProcessor] Timing: Running the build script took 1.866 secs 15:24:22.798 [ERROR] [org.gradle.BuildExceptionReporter] 15:24:22.799 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception.
15:24:22.693 [DEBUG] [org.gradle.process.internal.DefaultExecHandle]更改状态为:失败15:24:22.693 [DEBUG] [org.gradle.process.internal.DefaultExecHandle]处理'command'./Batch .groovy”,退出值为-1(状态:失败)15:24:22.695 [DEBUG] [org.gradle.configuration.project.BuildScriptProcessor]时间:运行构建脚本花费了1.866秒15:24:22.798 [错误] [org.gradle.BuildExceptionReporter] 15:24:22.799 [错误] [org.gradle.BuildExceptionReporter]失败:生成失败,出现异常。 15:24:22.799 [ERROR] [org.gradle.BuildExceptionReporter] 15:24:22.800 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong: 15:24:22.800 [ERROR] [org.gradle.BuildExceptionReporter] A problem occurred evaluating project ':app'.
15:24:22.799 [ERROR] [org.gradle.BuildExceptionReporter] 15:24:22.800 [ERROR] [org.gradle.BuildExceptionReporter] *出了什么问题:15:24:22.800 [ERROR] [org.gradle.BuildExceptionReporter]评估项目':app'时发生问题。 15:24:22.800 [ERROR] [org.gradle.BuildExceptionReporter] > A problem occurred starting process 'command './Batch.groovy'' 15:24:22.801 [ERROR] [org.gradle.BuildExceptionReporter] 15:24:22.801 [ERROR] [org.gradle.BuildExceptionReporter] * Try: 15:24:22.801 [ERROR] [org.gradle.BuildExceptionReporter] Run with --stacktrace option to get the stack trace.
15:24:22.800 [错误] [org.gradle.BuildExceptionReporter]>启动进程'命令'./Batch.groovy'时出现问题15:24:22.801 [错误] [org.gradle.BuildExceptionReporter] 15:24: 22.801 [错误] [org.gradle.BuildExceptionReporter] *尝试:15:24:22.801 [错误] [org.gradle.BuildExceptionReporter]使用--stacktrace选项运行以获取堆栈跟踪。 15:24:22.802 [LIFECYCLE] [org.gradle.BuildResultLogger] 15:24:22.802 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
15:24:22.802 [LIFECYCLE] [org.gradle.BuildResultLogger] 15:24:22.802 [LIFECYCLE] [org.gradle.BuildResultLogger]建立失败
Update: 更新:
Running the task inside a Groovy shell did the trick. 在Groovy shell中运行任务可以解决问题。
task batchTask(type: JavaExec) {
description 'batchTask in progress'
new GroovyShell().run(file('Batch.groovy'))
}
Running the task inside a Groovy shell did the trick. 在Groovy shell中运行任务可以解决问题。
task batchTask(type: JavaExec) {
description 'batchTask in progress'
new GroovyShell().run(file('Batch.groovy'))
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.