我使用的是带有java jdk 7u7的Windows 7 Pro x64.
我尝试在我的计算机上安装Android SDK,但是当我启动SDK Manager.exe时,dos-windows正在打开并立即关闭.所以我试图推出tools/android.bat
.但这没用,它告诉我:
"'C:\PROGRA~2\Android\ANDROI~1\tools\lib\\find_java.exe -s' isn't a external or internal command ...
ERROR No suitable java such ..."
Run Code Online (Sandbox Code Playgroud)
我为修复错误做了什么:
但是这次尝试的任何人都是成功的.有人可以帮帮我吗?
似乎有几种方法可以启动SDK Manager:
SDK Manager.exe
在Android SDK的根目录中.SDK Manager.exe
在sdk\tools\lib
Android SDK中.Window -> Android SDK Manager
Eclipse中的菜单android.bat
在sdk\tools
Android SDK中.在我的情况下,它似乎android.bat
失败了:
for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
Run Code Online (Sandbox Code Playgroud)
至于该行正在做什么...如果我手动运行: "[path_to_java]java" -jar lib\archquery.jar
它成功返回: x86_64
但是当批处理文件运行相同的命令时,我不知道为什么但它失败并显示错误消息:
Unable to access jarfile lib\archquery.jar
Run Code Online (Sandbox Code Playgroud)
因此变量swt_path
设置为空字符串.一切都从那里崩溃了.
批处理文件为变量设置正确的值java_exe
.其他人通常将此报告为问题,但这些解决方法与我的情况无关.
人们建议通过在其开头添加REM并添加一行来手动设置swt_path
变量来注释问题行,这是一个有效的解决方法:
REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
set swt_path=lib\x86
Run Code Online (Sandbox Code Playgroud)
但是,在我的情况下,关键问题是它选择从此处lib\x86
的lib\x86_64
文件夹或文件夹中加载jar文件.在某些时候,BAT文件错误,32位JDK和64位Android SDK之间的问题变得混乱.
SO,在我的情况的解决方法是:
编辑"android.bat"
如果使用32位Android SDK/JDK,请使用lib\x86
:
REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
set swt_path=lib\x86
Run Code Online (Sandbox Code Playgroud)如果使用64位Android SDK/JDK,请使用lib\x86_64
:
REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
set swt_path=lib\x86_64
Run Code Online (Sandbox Code Playgroud)执行此操作后,我可以通过运行android.bat
或从Eclipse菜单成功运行SDK Manager (但仍然不能SDK Manager.exe
直接运行任何一个文件).
归档时间: |
|
查看次数: |
19528 次 |
最近记录: |