我是与JAVA JDK 7u7在Windows 7专业版64位。
我试图在我的电脑上安装Android SDK,但是当我推出SDK的manager.exe,一个DOS窗口正在打开,并立即关闭。 于是,我就发动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 ..."
我有一个修复的错误做什么:
- 安装Java 6u35
- 安装Java X32和x64
- 检查我的路
- 启动管理员
- 安装在C:\开发的SDK
- 与android-sdk.zip或Android的sdk.exe安装
- 添加在路径的Android目录
但这种尝试的人是成功的。 有人能帮助我吗?
似乎有几种方法来启动SDK管理器:
-
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
至于什么该行正在做......如果我手动运行: "[path_to_java]java" -jar lib\archquery.jar
它成功返回: x86_64
但是,当批处理文件运行同样的命令,我不知道为什么,但它失败,出现错误信息:
Unable to access jarfile lib\archquery.jar
所以变量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
但在我的情况下,关键的问题是,它的选择从要么加载一个jar文件lib\x86
或lib\x86_64
此文件夹中。 在某些时候,事情感到困惑的BAT文件中的错误,一个32位的JDK和一个64位的Android SDK之间。
所以 ,在我的情况的解决方法是:
- 卸载所有Java版本
- 安装JDK
- 您可以使用32位的Android SDK和安装32位JDK
- 或者使用64位的Android SDK和安装64位JDK
- 但是JDK中的“位数”应与Android的SDK。 看来,无论是32位或64位的一个将64位计算机上工作,只要JDK位数Android SDK的位数相匹配。
编辑“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
如果使用的是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
这样做后,我可以成功运行运行SDK管理器android.bat
,或从Eclipse菜单(但是仍然没有被运行的是的SDK Manager.exe
文件直接)。
我就在这个星期有这个答案,已经确定是什么原因造成的。
当Java的更新它的变化,其中的可执行文件的存储路径。 这意味着,当该SDK管理器去查找的javaw.exe无法找到它,并立即关闭。
因此,重新安装了Android SDK将不能解决问题。 无论将重新安装JAVA。
解决这个问题的唯一办法就是正确地指向哪里JAVA的存储位置。
Windows有这样所谓的环境变量的一种方式。 这里是存储所有的目录,其中的Windows将查找可执行文件的变量,名为PATH。
因此,你必须要修改PATH变量以包括JAVA的路径。 默认情况下,JDK 7具有以下路径:
C:\Program Files\Java\jdk1.7.0_10\bin
编辑您的环境变量做到以下几点。
From the Start Menu right click on Computer and select "Properties"
This will take you to the Control Panel System Menu
On the left column look for the option "Advanced System Settings"
This will open a System Properties window
One of the tabs is named Advanced
In that there is a button that says Environmental Variables
If you search your System Variables you will see one called "Path"
Edit that variable and add the path above to include the latest Java Path.
一旦你完成了SDK管理器应该能够立即打开,您可以继续更新到了Android SDK的最新版本。
一旦更新完成,不要忘记,以确保您的IDE(Eclipse的即)是指向在SDK存储以便读取最新的Android SDK文件中的正确位置。 要访问在Eclipse此设置,去窗口 - >首选项 - > Android的
这将允许你手动设置在SDK的存储路径。
/ Program Files文件到C:/ Java和Path变量更改为新的价值,帮助我重新安装了Java的成不包含任何空格的路径,因此而不是C的唯一的事情。
希望这可以帮助。
我有同样的问题,它是最有可能在路径名称中使用空格引起的。 据了解,在道路名称和批处理文件空间不结合得很好。
您可以通过打开命令行提示符,改变位置确认到%SDK%\工具\ lib和运行find_java.bat。 你会得到像一个批次错误
'C:\PROGRA~2\Android\Android' is not recognized as an internal or external command,
operable program or batch file.
只需安装SDK到C:\ Android的\ SDK和NDK的到C:\的Android \ NDK,它会工作。
这就是我终于修复开放工具/ android.bat
set java_exe=
call lib\find_java.bat
if not defined java_exe goto :EOF
用你的java路径替换
set java_exe="c:\PROGRA~1\Java\jdk1.7.0\bin\java.exe"
注:请不要使用C:\Program Files\Something
它抛出一个错误,因为空间的使用短名称符号C:\PROGRA~1\Something
它会像魅力
我同样的问题SDK的manager.exe只是没有错误信息或Windows事件停止。
我与已经提供的答案(我在Win 8.1上运行)的混合解决了这个。 这个问题似乎是由find_java针对性的java.exe是失步与最近安装的JDK版本。
为了我:
改变现有指向JDK路径的JRE路径JAVA_HOME为我工作。