Android ImportError:没有名为dtmilano的模块
嗨,我是python开发新手。我正在尝试执行中给出的代码,但当我尝试执行代码时,会出现以下错误:Android ImportError:没有名为dtmilano的模块,android,eclipse,pydev,jython,androidviewclient,Android,Eclipse,Pydev,Jython,Androidviewclient,嗨,我是python开发新手。我正在尝试执行中给出的代码,但当我尝试执行代码时,会出现以下错误: Traceback (most recent call last): File "C:\Users\gur31265\workspace\MonkeyRunnerForSmartRecorder\com\test\Runner.py", line 23, in <module> from com.dtmilano.android.viewclient import ViewC
Traceback (most recent call last):
File "C:\Users\gur31265\workspace\MonkeyRunnerForSmartRecorder\com\test\Runner.py", line 23, in <module>
from com.dtmilano.android.viewclient import ViewClient
ImportError: No module named dtmilano
回溯(最近一次呼叫最后一次):
文件“C:\Users\gur31265\workspace\MonkeyRunnerForSmartRecorder\com\test\Runner.py”,第23行,在
从com.dtmilano.android.viewclient导入viewclient
ImportError:没有名为dtmilano的模块
我将eclipse与PyDev和Jython 2.5.3一起使用。我还配置了在Windows7机器上运行的eclipse上的Python32。其他Python脚本运行良好,但我不知道dtmilano博客上给出的代码为什么会导致此错误。我还安装了AndroidViewClient,并在系统路径中设置了ANDROID_VIEW_CLIENT_HOME。请提供帮助。您可以从Eclipse和PyDev以及位于的命令行中找到有关如何使用
PYTHONPATH
和ANDROID\u VIEW\u CLIENT\u HOME
环境变量的详细说明
简而言之:
#!/usr/bin/env monkeyrunner
import re
import sys
import os
import java
# This must be imported before MonkeyRunner and MonkeyDevice,
# otherwise the import fails.
# PyDev sets PYTHONPATH, use it
try:
for p in os.environ['PYTHONPATH'].split(':'):
if not p in sys.path:
sys.path.append(p)
except:
pass
try:
sys.path.append(os.path.join(os.environ['ANDROID_VIEW_CLIENT_HOME'], 'src'))
except:
pass
from com.dtmilano.android.viewclient import ViewClient, View
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
使用android SDK中的monkeyrunner运行代码。例如: 要编译名为help.py的文件,请使用以下命令: c:>monkeyrunner help.py
同样的命令也适用于linux环境。我花了一点时间来解决这个问题。在导入MonkeyRunner之前,请确保将AndroidViewClient源目录附加到路径 以下操作将因导入错误而失败:没有名为dtmilano的模块:
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
sys.path.append('/path/to/android_view_client_home/src')
from com.dtmilano.android.viewclient import ViewClient
但是,如果您只需切换顺序即可:
sys.path.append('/path/to/android_view_client_home/src')
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
from com.dtmilano.android.viewclient import ViewClient
似乎一旦导入MonkeyRunner的
com
包,它将只在该包中查找dtmilano
。但是,如果在您导入任何内容之前,两个com
包都在路径中,它将知道在这两个位置查找。您得到的sys.path
是什么?C:\\Users\\gur31265\\workspace\\MonkeyRunnerForSmartRecorder\\com\\test,C:\\Users\\gur31265\\workspace\\MonkeyRunnerForSmartRecorder,D:\\E&F驱动器备份\\程序文件\\Android\\Android sdk\\tools\\lib\\monkeyrunner.jar,C:\\Users\\gur31265\\Downloads\\dtmilano-AndroidViewClient-bd98f63\\AndroidViewClient\\src,D:\\E&F驱动器备份\\程序文件\\Android\\Android sdk\\tools\\lib\\jython.jar,C:\\Program Files\\Python32\\dll,C:\\Program Files\\Python32\\lib,C:\\Program Files\\Python32,C:\\Program Files\\Python32\\lib\\site packages,C:\\Windows\\system32\\Python32.zipIf我将其作为python模块运行时,会出现以下错误:回溯(最近一次调用):文件“C:\Users\gur31265\workspace\MonkeyRunner\com\htc\monkey\runner\MonkeyRunner.py”,第19行,在from com.dtmilano.android.viewclient导入viewclient导入错误:是否没有名为dtmilano.android.viewclientjars的模块?你在用jython?您链接到的脚本使用monkeyrunner
作为可执行文件,而不是Python…我正在windows 7上工作,我没有monkeyrunner.exe,如果我尝试将其设置为解释器,eclipse将不会接受它。是的,要做到这一点,我需要一台Linux机器。就是它!我挣扎了这么久!这是唯一让它起作用的东西!非常感谢。我正在尝试运行一个Monkey runner脚本测试。在完成上述操作后,我开始得到“对于这个模块,您应该使用‘python’解释器,而不是‘monkeyrunner’”…有什么建议吗?