在这个“NoSuchMethod”例外中哪个方法丢失了?

时间:2011-08-16 19:18:13

标签: java android exception nosuchmethoderror

我收到“NoSuchMethod”的以下异常:

08-16 15:15:16.368: WARN/dalvikvm(3164): Unable to match class for part: 'Ljava/awt/Image;'
08-16 15:15:16.399: WARN/System.err(3164): JRegistry Error: null
08-16 15:15:16.399: WARN/System.err(3164): java.lang.NoSuchMethodException
08-16 15:15:16.446: WARN/System.err(3164):     at java.lang.Class.getDeclaredMethods(Native Method)
08-16 15:15:16.446: WARN/System.err(3164):     at java.lang.ClassCache.getDeclaredMethods(ClassCache.java:153)
08-16 15:15:16.446: WARN/System.err(3164):     at java.lang.Class.getDeclaredMethods(Class.java:774)
08-16 15:15:16.454: WARN/System.err(3164):     at org.jnetpcap.packet.structure.AnnotatedHeader.inspectJHeaderClass(Unknown Source)
08-16 15:15:16.454: WARN/System.err(3164):     at org.jnetpcap.packet.JRegistry.inspect(Unknown Source)
08-16 15:15:16.454: WARN/System.err(3164):     at org.jnetpcap.packet.JRegistry.register(Unknown Source)
08-16 15:15:16.462: WARN/System.err(3164):     at org.jnetpcap.packet.JRegistry.register(Unknown Source)
08-16 15:15:16.462: WARN/System.err(3164):     at org.jnetpcap.packet.JRegistry.<clinit>(Unknown Source)
08-16 15:15:16.462: WARN/System.err(3164):     at org.jnetpcap.Pcap.datalinkToId(Unknown Source)
08-16 15:15:16.470: WARN/System.err(3164):     at org.jnetpcap.Pcap.loop(Unknown Source)
08-16 15:15:16.470: WARN/System.err(3164):     at com.gnychis.coexisyst.Wifi$WifiMon.doInBackground(Wifi.java:494)
08-16 15:15:16.493: WARN/System.err(3164):     at com.gnychis.coexisyst.Wifi$WifiMon.doInBackground(Wifi.java:1)
08-16 15:15:16.493: WARN/System.err(3164):     at android.os.AsyncTask$2.call(AsyncTask.java:185)
08-16 15:15:16.501: WARN/System.err(3164):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
08-16 15:15:16.501: WARN/System.err(3164):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
08-16 15:15:16.509: WARN/System.err(3164):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
08-16 15:15:16.517: WARN/System.err(3164):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
08-16 15:15:16.517: WARN/System.err(3164):     at java.lang.Thread.run(Thread.java:1096)

但是,我不太明白哪种方法是问题。是org.jnetpcap.Pcap.loop吗?

3 个答案:

答案 0 :(得分:1)

它实际上看起来是在Thread.run的调用中 - 检查你的参数。如果它们与Thread.run的签名不匹配,你会得到那个错误,我相信。

答案 1 :(得分:0)

  

... dalvikvm(3164):无法匹配部分类:'Ljava / awt / Image;'

已在SO上讨论过:using awt with android

答案 2 :(得分:0)

似乎是org.jnetpcap。*是为J2SE编写的 - 它正在寻找java.awt.Image。开箱即用的Android API中不存在AWT。

有一些解决方案可以在Android上使用AWT(或Swing)。