如果没有向Gradle提供参数,是否可能抛出错误?
我的gradle安装程序在运行时接受参数,这些参数在gradle Exec任务调用的shell脚本中检查。但是,为了达到这一点,Gradle处理依赖关系,并在执行结束脚本之前花费大量时间,如果没有传递参数,则会抛出错误 gradle中的生成任务如下所示:如果没有向Gradle提供参数,是否可能抛出错误?,gradle,Gradle,我的gradle安装程序在运行时接受参数,这些参数在gradle Exec任务调用的shell脚本中检查。但是,为了达到这一点,Gradle处理依赖关系,并在执行结束脚本之前花费大量时间,如果没有传递参数,则会抛出错误 gradle中的生成任务如下所示: task buildAll(type: Exec) { environment['PROJECT_ROOT'] = "${projectDir}" workingDir rootProject.projectDir.path
task buildAll(type: Exec) {
environment['PROJECT_ROOT'] = "${projectDir}"
workingDir rootProject.projectDir.path
executable rootProject.projectDir.path + "/script.ksh"
if (project.hasProperty('ARGS')) {
args(ARGS.split(','))
}
}
Gradle的名称如下:
./gradlew build -PARGS="-arg1,value1,-arg2,value2,-arg3,-arg4,value4"
我打算检查
-arg2
,如果没有提供,我希望gradle构建失败并显示某种用法。这可能吗?您可以在脚本的最开始添加一个if块:
if (!project.hasProperty('lol')) {
throw new GradleException("'lol' property is required!")
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.google.guava:guava:18.0'
}
}
但是,它不会阻止gradle解析脚本本身的依赖项-buildscript
块将首先进行计算