Groovy:Groovy.lang.MissingMethodException:没有方法的签名

Groovy:Groovy.lang.MissingMethodException:没有方法的签名,groovy,Groovy,我只是从groovy开始。这个错误看起来很基本。但我似乎没能挺过来。感谢您的帮助,指引我走向正确的方向 我正在定义一个如下所示的字符串,并将其传递给testSender方法 def line = "5 1 -81.42 Ido1" testSender(line.toString()) def testSender(line){ try { println line } catch(e) { println e.printStackT

我只是从groovy开始。这个错误看起来很基本。但我似乎没能挺过来。感谢您的帮助,指引我走向正确的方向

我正在定义一个如下所示的字符串,并将其传递给testSender方法

def line = "5 1 -81.42 Ido1"
testSender(line.toString())
def testSender(line){
     try {
         println line  
     } catch(e) {
         println e.printStackTrace()
     }
}
testSender方法的定义

def line = "5 1 -81.42 Ido1"
testSender(line.toString())
def testSender(line){
     try {
         println line  
     } catch(e) {
         println e.printStackTrace()
     }
}
当我运行这个时,得到这个错误

groovy.lang.MissingMethodException: 
No signature of method: GroovySQLQuery$_main_closure1.testSender() 
is applicable for argument types: (java.lang.String) values: [5 1 -81.42 Ido1]
应该是:

class GroovySQLQuery { 
    static void main(String[] args) { 
        def line = "5 1 -81.42 Ido1" 
        testSender(line.toString()) 
    } 

    static testSender(line) { 
        println line 
    } 
}

需要注意的要点是
GroovySQLQuery$\u Main\u closure1.testSender()
。为什么
GroovySQLQuery
指的是
testSender()
,其中testSender只是您实现的一个测试方法。脚本的名称是GroovySQLQuery.groovy。testSender是此脚本的一个方法部分。请提供一个完整的示例,显示错误。将代码放入groovy文件中会运行fineclass GroovySQLQuery{static void main(String[]args){def line=“5 1-81.42 Ido1”testSender(line.toString())}def testSender(line){println line}},这是整个脚本。。。。这是个例外。。。。。groovy.lang.MissingMethodException:没有方法签名:静态GroovySQLQuery.testSender()适用于参数类型:(java.lang.String)值:[5 1-81.42 Ido1]可能的解决方案:testSender(java.lang.Object)