[英]Groovy: Could not find matching constructor
任何人都可以幫助我解決為什么我收到以下類(JobStage)的運行時錯誤(找不到匹配的構造函數)。 我嘗試創建以下類的實例,但導致以下運行時錯誤。
class JobStage {
String name
StageType stageType
String transformationType
List<ImField> fields
TableAttribute tableAttributes
List<Connector> inputConnectors
List<Connector> outputConnectors
JobStageProperties stageProperties
JobStage(String name, StageType stageType, String transformationType,
List<ImField> fields,TableAttribute tableAttributes, List<Connector> inputConnectors,
List<Connector> outputConnectors, JobStageProperties stageProperties){
this.name = name
this.stageType = stageType
this.transformationType = transformationType
this.fields = fields
this.tableAttributes = tableAttributes
this.inputConnectors = inputConnectors
this.outputConnectors = outputConnectors
this.stageProperties = stageProperties
}
}
groovy.lang.GroovyRuntimeException: Could not find matching constructor for: com.starling.informatica.dto.jobstage.JobStage(String, com.starling.informatica.dto.StageType, String, ArrayList, null, ArrayList, com.starling.informatica.dto.stageProperties.SourceRelationalStageProperties)
此處的錯誤假定TableAttribute
類為null
和 igonres List<Connector> outputConnectors
參數
我試圖像這樣創建實例:
JobStageProperties stageProperties = TeradataSpecUtil.getSourceStageProperties()
List<ImField> fields = [new SourceField("integer","","customer_id","NULL","","10","0","","1","NOT A KEY","0","ELEMITEM","NO","11","0","0","0","10","0",""),
new SourceField("varchar","","customer_name","NULL","","50","0","","2","NOT A KEY","0","ELEMITEM","NO","0","0","0","11","50","10","")
]
List<Connector> inputConnectors = []
List<Connector> outputConnectors = [new Connector("customer_id","informatica_customer_source","Source Definition","customer_id","SQ_informatica_customer_source" ,"Source Qualifier"),
new Connector("customer_name","informatica_customer_source","Source Definition","customer_name","SQ_informatica_customer_source" ,"Source Qualifier")
]
TableAttribute tableAttribute = null
List<JobStage> expectedJobStage= [new JobStage("informatica_customer_source",
StageType.TERADATA_CONNECTOR, "Source Definition", fields,tableAttribute, inputConnectors,
outputConnectors, stageProperties)]
我的代碼在邏輯上是正確的,問題出在 Intellij 上。 執行“使緩存無效並重新啟動”后,代碼成功運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.