如何将参数值传递给 gradle mlExportToFile 转换模块

问题描述

我目前正在使用 mlExportToFile 将 JSON 文档导出到单个文件。我想将一个参数值从我的 shell 脚本传递到转换模块。认情况下,转换模块函数(由 gradle mlCreateTransform -PtransformName=CustomerTransform -PtransformType=sjs 创建)接受 3 个变量作为输入 - 上下文、参数和内容。但是,在定义参数时,如下面的脚本所示,该值不会发送到转换函数

querydate=$(<DeltaTimestamp.txt)
querydate1="${querydate}.000000Z"
gradle mlExportToFile -PexportPath=/tgtfiles/my_file.json -Ptransform=CustomerTransform -PwhereUrisQuery='cts.andQuery([cts.collectionQuery("latest"),cts.collectionQuery("customer")])' -Pparams='{"querydate1":"'"$querydate1"'"}' 

解决方法

如果您只运行“./gradlew mlExportToFile”,您将获得该任务的“帮助”文本。这包括以下内容:

transform:应用于每条记录的 REST 转换的名称。可以通过将参数附加到此属性的值来将参数传递给转换,以逗号分隔 - 例如myTransform,param1,value1,param2,value2

因此,您可以将参数名称和值附加到“-Ptransform=CustomerTransform”参数中 - 例如"-Ptransform=CustomerTransform,value2"。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...