You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle Exec任务调用Python脚本时argparser无法识别传入参数

解决Gradle Exec任务调用Python脚本参数获取为None的问题

问题根源

参数名不匹配:你的Gradle任务传入的是--file参数,但Python脚本输出显示的是imageFile=None,说明实际运行的Python脚本中第一个参数定义的是--imageFile,而非--file,导致参数无法正确绑定。

修正方案

方案1:修改Gradle任务,匹配脚本参数名

将Gradle中的--file改为--imageFile,和脚本内的参数名对齐:

def foo = tasks.register('foo', Exec) {
    group 'Foo'
    commandLine 'python3'
    args 'foo.py', 
         '--imageFile', "/path/in",
         '--outputDir', "/path/out"
}

方案2:修改Python脚本,匹配Gradle传入的参数名

将脚本中的参数名改为--file,和Gradle传入的参数对齐:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--file')
parser.add_argument('--outputDir')
args = parser.parse_args()
print(args)

执行修正后的代码,即可得到符合预期的输出:

Namespace(file="/path/in", outputDir="/path/out")

内容的提问来源于stack exchange,提问作者CU_dev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 16:05:34