我尝试通过monkey runner命令提示符执行示例python程序,并且它正在抛出错误
Can't open specified script file
Usage: monkeyrunner [options] SCRIPT_FILE
-s MonkeyServer IP Address.
-p MonkeyServer TCP Port.
-v MonkeyServer Logging level (ALL, FINEST, FINER, FINE, CONFIG, INFO,
WARNING, SEVERE, OFF)
线程“main”java.lang.NullPointerException中的异常 所以任何人都可以指导我如何解决这个问题
答案 0 :(得分:17)
scriptfile应该是完整路径文件名
试试下面
monkeyrunner c:\test_script\first.py
答案 1 :(得分:1)
尝试使用类似
的内容...\tools>monkeyrunner -v ALL first.py
其中first.py
是我的示例python脚本,我将其复制到android SDK的工具文件夹(monkeyrunner.bat
所在的位置)
答案 2 :(得分:1)
在所有unix / linux系列OS下,可以使用sha bang语法。
使用以下命令的结果编辑脚本的第一行:
which monkeyrunner
例如,如果monkeyrunner(通常提供android sdk)已安装在/ usr / local / bin / sdk下写:
#!/usr/local/bin/sdk/tools/monkeyrunner
甚至使用“env”
#!/usr/bin/env monkeyrunner
然后将脚本文件设置为可执行文件
chmod +x <script>
您现在可以从shell启动脚本。
答案 3 :(得分:0)
将工作目录切换到Android SDK文件夹似乎没有意义,只是为了获取自己的一些相对引用路径。这意味着您必须指定脚本文件的完整路径以及要保存或比较的PNG图像文件。
更好的方法是修改&#34; monkeyrunner.bat&#34;中的几行。在您的SDK文件夹下,如下所示。这将使用您当前的路径作为工作目录,因此,无需使用完整路径文件名。
rem don't modify the caller's environment
setlocal
rem Set up prog to be the path of this script, including following symlinks,
rem and set up progdir to be the fully-qualified pathname of its directory.
set prog=%~f0
rem Change current directory and drive to where the script is, to avoid
rem issues with directories containing whitespaces.
rem cd /d %~dp0
rem Check we have a valid Java.exe in the path.
set java_exe=
call %~sdp0\lib\find_java.bat
if not defined java_exe goto :EOF
set jarfile=monkeyrunner.jar
set frameworkdir=
set libdir=
if exist %frameworkdir%%jarfile% goto JarFileOk
set frameworkdir=%~sdp0\lib\
if exist %frameworkdir%%jarfile% goto JarFileOk
set frameworkdir=%~sdp0\..\framework\
:JarFileOk
set jarpath=%frameworkdir%%jarfile%
if not defined ANDROID_SWT goto QueryArch
set swt_path=%ANDROID_SWT%
goto SwtDone
:QueryArch
for /f %%a in ('%java_exe% -jar %frameworkdir%archquery.jar') do set swt_path=%frameworkdir%%%a
:SwtDone
if exist %swt_path% goto SetPath
echo SWT folder '%swt_path%' does not exist.
echo Please set ANDROID_SWT to point to the folder containing swt.jar for your platform.
exit /B
:SetPath
call %java_exe% -Xmx512m -Djava.ext.dirs=%frameworkdir%;%swt_path% -Dcom.android.monkeyrunner.bindir=%frameworkdir%\..\..\platform-tools\ -jar %jarpath% %*
答案 4 :(得分:0)
我遇到了和你一样的事情,我在工具下使用“monkeyrunner”命令解决了,你的脚本文件应该是一个完整的路径名。看起来目录“tools”是MonnkeyRunner的主目录。我很郁闷,我不能直接通过pydev IDE运行我的脚本文件。
答案 5 :(得分:0)
monkeyrunner.bat cygpath -w $(pwd)/monkey.py