如何使用 Gradle 任务从命令行获取参数?

How to get an argument from command line using Gradle task?

我正在尝试使用 Gradle 任务从命令行获取参数:

class myApk extends DefaultTask {

    @Option(option="apkName", description="apkName for your file")
    String apkName
    
    @TaskAction
    void uploadApk() {
        def arg = "curl -F \"demo${apkName}.apk=" +
                  "@${project.projectDir}\app\build\outputs\apk\debug\app-debug.apk\" " +
                  "https://URL"
        project.exec {
            commandLine("cmd", "/c", arg)
        }
    }
}
task uploadApk(type: myApk) { }

但是在终端中输入 gradle uploadApk --apkName=foo 后,我得到了这种异常:

Problem configuring task :app:uploadApk from command line.
> Unknown command-line option '--apkName'.

P.S。我已经阅读了这个主题(How to pass arguments from command line to gradle),但它似乎对这个问题没有帮助;(

感谢上面的评论,我用 -P 解决了这个问题