2013-10-14 34 views
1

我已阅读本thread和它说我必须public static void main(java.lang.String[] args) 我的主要功能是这样的:java.lang.NoSuchMethodError同时运行的程序

public static void main(String[] args) throws FileNotFoundException, IOException, TrieException, TSException { 
     CSVReader reader=new CSVReader(new FileReader(".//Data//test1.csv")); 
     String[] nextline; 
     int linenumber=0; 
     double[] numbers=new double[10]; 
     double[] times=new double[10]; 
     for(int i=0;i<=7;i++) 
     { 
      nextline = reader.readNext(); 
      numbers[i]= Double.parseDouble(nextline[0]); 
      times[i]=i;  
     } 
     DiscordsAndMotifs dr= edu.hawaii.jmotif.sax.SAXFactory.series2DiscordsAndMotifs(numbers, 4, 2, 2, 2,null);// If I comment this line of code, my programm works without any error 

    } 

如果我跑我的程序,我得到这个错误:

Exception in thread "main" java.lang.NoSuchMethodError: org.hackystat.utilities.logger.HackystatLogger.getLogger(Ljava/lang/String;Ljava/lang/String;) Ljava/util/logging/Logger; 
    at edu.hawaii.jmotif.sax.SAXFactory.<clinit>(SAXFactory.java:51) 
    at motif.discovery.MotifDiscovery.main(MotifDiscovery.java:35)` 

我在我的项目中需要库。这个错误的原因是什么?你能帮我解决这个问题吗?

+0

你可能在某个地方有HackystatLogger,但是你确定你有正确的版本,并且getLogger(Ljava/lang/String; Ljava/lang/String;)存在于你的jar中吗? – Julien

+0

我在我的库中有jar,但是我在jar中看到的是这样的函数:'public static Logger getLogger(String loggerName){' – Kaja

回答

5

听起来像您使用的hackystat实用程序的版本与jmotif的版本不同 - 因此jmotif jar文件包含对执行时不存在的方法的引用。

我建议你找出jmotif库需要哪个版本的hackystat-utilities,并使用它。

+0

你知道我该如何找到它?它在jmotif的源代码中有一些吗? – Kaja

+2

@Kaja:我自己也没有使用过任何一个图书馆,所以如果不进行更多的研究,我不能真正帮助你 - 这恐怕基本上是你自己可以做的研究。 –

0

缺少edu.hawaii.jmotif.sax.SAXFactory.series2DiscordsAndMotifs(数字,4,2,2,2,null)所需的日志jar,请尝试将apache常用日志记录jar或log4j jar导入到您的项目中。

+0

谢谢你的回答。我已经添加了这些库,但我仍然有上面的异常:/ – Kaja

相关问题