我正在尝试从MonkeyRunner (4.2)运行Eclipse测试工具。我安装了EclipseJython2.5.1和PyDev插件。我的PyDev解释器设置为Jython2.5。
我用一个简单的Jython文件在Eclipse中创建了一个jython项目:
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
# Connects to the current device, returning a MonkeyDevice object
device = MonkeyRunner.waitForConnection()现在,当我从Eclipse启动它(项目>以JythonProject身份运行)时,我得到了以下异常:
Traceback (most recent call last):
File "C:\svnrepository\trunk\JythonProject\src\main.py", line 10, in <module>
device = MonkeyRunner.waitForConnection()
at com.android.monkeyrunner.MonkeyRunner.waitForConnection(MonkeyRunner.java:75)
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)
java.lang.NullPointerException: java.lang.NullPointerException你知道哪里会出问题吗?
发布于 2012-11-07 00:29:02
有一篇关于Diego Torres Milano如何配置PyDev与monkeyrunner一起使用的文章。我遵循了his的步骤,在我的例子中,一切都很好。
简而言之,首先你需要改变你的Android安装。您需要将monkeyrunner工具重命名为monkeyrunner-original。然后,您需要在同一文件夹中编写shell脚本(将其命名为monkeyrunner),该脚本将以特定的方式调用monkeyrunner-original。
Linux脚本:
# /bin/bash
if [ "$1" = '-u' ]
then
shift
fi
exec /opt/android-sdk-linux_86/tools/monkeyrunner-original "$@" 用于Windows的脚本:
REM
@echo off if("%1")==("-u") shift "C:\Program Files\Android\android-sdk\tools"/monkeyrunner-original %1 %2 %3 %4 %5 %6 %7 %8然后,在Eclipse中,您应该定义新的Python解释器(而不是Jython),并将其指向所创建的脚本。
https://stackoverflow.com/questions/13251037
复制相似问题