Groovy之类中的 MissingPropertyException

arxive 阅读:152 2025-06-02 22:19:02 评论:0

我对 Groovy 完全陌生,只是在运行这个程序时遇到了一些麻烦。我想要做的就是将一个列表的所有元素添加到另一个列表中,但我什至无法在方法中访问我想要的变量。

我在这里四处寻找答案,但对于我对 Groovy 的有限理解而言,所有这些似乎都太针对某个人的问题或太技术性了。任何帮助表示赞赏。

在 IntelliJ IDEA 中使用 Groovy 2.4.5 如果这会有所不同。这是我要运行的代码:

class ListPractice implements Testable { 
 
    def mylist = [4,5,6] 
 
    /** 
     * Adds a set of elements to the mylist variable 
     * 
     * @paraelts The elements to be added 
     */ 
    def addToList(List elts) { 
        myList.each{ 
            println "I: $it" 
        } 
    } 
 
    @Override 
    void testMe() { 
        addToList([7,8,9]) 
    } 
} 

但它会引发以下错误:

Caught: groovy.lang.MissingPropertyException: No such property: myList 
for class: ListPractice 
Possible solutions: mylist 
    groovy.lang.MissingPropertyException: No such property: myList for class: ListPractice 
Possible solutions: mylist 
    at ListPractice.addToList(ListPractice.groovy:14) 
    at ListPractice$addToList.callCurrent(Unknown Source) 
    at ListPractice.testMe(ListPractice.groovy:36) 
    at Testable$testMe.call(Unknown Source) 
    at RunMe$_main_closure1.doCall(RunMe.groovy:12) 
    at RunMe.main(RunMe.groovy:11) 

由于这是我第一次使用该语言并且代码的结构是由我的老师完成的,我什至不确定 @Override 是否必要或它的作用。

请您参考如下方法:

大写很重要

您将列表声明为 mylist

然后你尝试在 myList

上调用每个

它会在错误消息中显示您


标签:Exception
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号