类型 Java 的方法未定义

Method undefined for type Java

很难弄清楚我在这方面哪里出了问题。在 java 中使用 WEKA 构建系统来研究关联并尝试实施 Apriori 算法。目前这是代码:

package model;

import weka.associations.*;
import weka.core.Instances;
import weka.core.converters.ConverterUtils.DataSource;

public class Apriori {

public static void main(String args[]) throws Exception {
    String dataset = "/Users/andrew/workspace/Movies/src/data/tagsfinal.arff";
    DataSource dsource = new DataSource(dataset);
    Instances dapriori = dsource.getDataSet();


    Apriori apriori = new Apriori();
     apriori.buildAssociations(dapriori);

    System.out.println(apriori);
  }
}

从网络上的几个实现来看,这似乎是一种被广泛接受的方法,但是我在 "apriori.buildAssociations" 行收到一个错误,告诉我该方法对于 Apriori 类型是未定义的。此外,我用于关联的导入语句仅用作包类型,并且在尝试将其扩展为时:

import weka.associations.Apriori;

这会引发 "The import weka.associations.Apriori conflicts with a type defined in the same file" 的错误消息。我已经搜索了 Whosebug 和其他资源,并意识到那里有很多类型未定义的问题,但是还没有找到解决这个问题的方法。任何 help/pointers 将不胜感激。

您的 class 也被命名为 Apriori,因此您遇到了名称冲突。

您应该将您自己的 class 的名称更改为其他名称(例如 AprioriTest)。在不太可能的情况下,你真的需要你的 class 被命名为 Apriori,那么你必须通过它的全名来引用库的实现:

weka.associations.Apriori apriori = new weka.associations.Apriori();
apriori.buildAssociations(dapriori);