Apache Hop Run传递Workflow参数求助:命令行执行报错
问题:Apache Hop Run 传递参数给 Workflow 报错,GUI 运行正常
我在使用Apache Hop Run执行Workflow时,传递参数一直报错,但在Hop GUI中给参数anomes传入2023-02可以正常运行。执行的命令如下:
.\hop-run.bat -j ROTINA_SUPERA -r local -e PROD_ROTINA_SUPERA -f "C:\Apache Hop\Pipelines\ROTINA_SUPERA\ATUALIZACAO_SUPERA.hwf" -p anomes=2023-02
可能的解决方法
- 给参数对添加引号:Windows命令行中,参数值包含
-这类特殊符号时,可能会被解析干扰。尝试将参数部分改为:-p "anomes=2023-02" - 调整参数顺序:Hop Run的参数解析对顺序有要求,建议把指定Workflow文件的
-f参数放在最前面,修改后的命令:.\hop-run.bat -f "C:\Apache Hop\Pipelines\ROTINA_SUPERA\ATUALIZACAO_SUPERA.hwf" -j ROTINA_SUPERA -r local -e PROD_ROTINA_SUPERA -p anomes=2023-02 - 核对参数名大小写:Apache Hop的参数名区分大小写,确认你Workflow里定义的参数确实是
anomes(全小写),和命令行中写的完全一致 - 使用全路径调用hop-run.bat:如果当前工作目录不是Hop安装根目录,直接用相对路径调用可能出问题,换成全路径试试:
"C:\Apache Hop\hop-run.bat" -j ROTINA_SUPERA -r local -e PROD_ROTINA_SUPERA -f "C:\Apache Hop\Pipelines\ROTINA_SUPERA\ATUALIZACAO_SUPERA.hwf" -p anomes=2023-02 - 查看详细日志定位问题:添加
-l参数生成日志文件,比如:
打开日志文件查看具体报错信息,能更精准定位是参数未识别、文件路径错误还是环境配置问题.\hop-run.bat -j ROTINA_SUPERA -r local -e PROD_ROTINA_SUPERA -f "C:\Apache Hop\Pipelines\ROTINA_SUPERA\ATUALIZACAO_SUPERA.hwf" -p anomes=2023-02 -l hop_exec.log
内容的提问来源于stack exchange,提问作者gugoan
相关产品推荐
相关产品推荐

