Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android NoClassDefFoundError:com/google/common/base/Predicate在Jython中导入MonkeyRunner时_Android_Jython_Predicate_Monkeyrunner - Fatal编程技术网

Android NoClassDefFoundError:com/google/common/base/Predicate在Jython中导入MonkeyRunner时

Android NoClassDefFoundError:com/google/common/base/Predicate在Jython中导入MonkeyRunner时,android,jython,predicate,monkeyrunner,Android,Jython,Predicate,Monkeyrunner,我想使用MonkeyRunner生成MotionEvent(通过触摸屏)。我已经阅读了有关的信息 问题是对于这个jython程序: from com.android.monkeyrunner import MonkeyRunner if __name__ == '__main__': # Connects to the current device, returning a MonkeyDevice object device = MonkeyRunner.waitForConn

我想使用MonkeyRunner生成MotionEvent(通过触摸屏)。我已经阅读了有关的信息

问题是对于这个jython程序:

from com.android.monkeyrunner import MonkeyRunner

if __name__ == '__main__':
   # Connects to the current device, returning a MonkeyDevice object
   device = MonkeyRunner.waitForConnection()
我在执行时遇到以下错误:

Traceback (most recent call last):
  File "C:\Documents and Settings\jjungb00\python\workspace\monkey\src\runner.py",     line 6, in <module>
    from com.android.monkeyrunner import MonkeyRunner
java.lang.NoClassDefFoundError: com/google/common/base/Predicate

at com.android.monkeyrunner.MonkeyRunner.classDictInit(MonkeyRunner.java:48)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.python.core.PyJavaType.init(PyJavaType.java:534)

at org.python.core.PyType.createType(PyType.java:1264)

at org.python.core.PyType.addFromClass(PyType.java:1201)

at org.python.core.PyType.fromClass(PyType.java:1291)

我从android sdk工具/lib中添加了monkeyrunner.jar作为外部库。 我运行的是XP和jython 2.5.2


知道怎么办吗?我想我必须添加另一个库,但我不知道在哪里或哪个库。

您需要添加Google Collections库-当前重命名为Guava。在android SDK目录中查找guavalib.jar。

感谢您的快速回答。添加库帮助后,现在我得到了一个nullpointer异常,但它似乎在其他stackoverflow线程中得到了响应,如:
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Predicate

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)