繁体   English   中英

groovy.lang.MissingMethodException:没有方法签名:java.lang.String.call() 适用于参数类型:() 值:[]

[英]groovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: () values: []

我正在尝试使用 groovy 代码从RESTAPI访问数据,但出现如下错误:

groovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: () values: []
Possible solutions: wait(), chars(), any(), wait(long), take(int), tap(groovy.lang.Closure)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:70)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:182)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeClosure(ScriptBytecodeAdapter.java:586)

错误主要出现在代码行的以下部分:

    String requestString = getRequestStringPrefix() + sb.toString()
    readHistory(authToken,ricMap,outFile)
    writeInstFile(outFile)

我是 groovy 编码的新手,不了解问题的确切原因以及如何在代码中解决此问题。

使用此getRequestStringPrefix()您正在调用具有该名称的方法或作为快捷方式调用底层 object 上的方法call() ,然后它看起来像getRequestStringPrefix.call()

我不确定你的意图是什么,但是这条线:

String requestString = getRequestStringPrefix() + sb.toString()

应该看起来像

String requestString = getRequestStringPrefix + sb.toString()

因为变量getRequestStringPrefix (一个奇怪的 var 名称)被定义为 String 进一步向下:

String getRequestStringPrefix = """{
  "ExtractionRequest": {..."""

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM