“Android Create” call fails in windows 7 - missing JDK
我在Windows 7中安装android dev环境时遇到问题。我按照此处的说明以及几个环境子链接进行操作。我将Eclipse与Android插件配合使用。我已经在不同的位置(jdk-6u20-windows-i586.exe)上安装了Java JDK多次,但是显然缺少了一些东西。
每次我运行" android create avd --target 2 --name my_avd"时,我都会收到错误消息:
1 2 3 4 5 6 7 8 9 10 11 12 13 | C:\\Users\\andrew>android create avd --target 2 --name my_avd WARNING: Java not found in your path. Checking it it's installed in C:\\Program Files\\Java instead. ERROR: No suitable Java found. In order to properly use the Android Developer Tools, you need a suitable version of Java installed on your system. We recommend that you install the JDK version of JavaSE, available here: http://java.sun.com/javase/downloads/ You can find the complete Android SDK requirements here: http://developer.android.com/sdk/requirements.html |
此错误消息是我多次安装JDK的原因。首先,我尝试安装到e:驱动器上的某个位置。然后,我将其移动到默认位置(程序文件(x86)\\\\ java \\\\ jdk.6.something。我也尝试强制使其进入程序文件\\\\路径,但它仍会自动安装到(x86)中)我每次都将安装路径添加到我的path环境变量中,但是我仍然继续收到此错误,我怀疑Windows 7和android工具在查找JDK方面不能很好地协同工作,但是谁知道,这可能是完全不同的。如果您以前曾见过此错误,我将不胜感激。
在意外安装Java SDK的32位版本后,我遇到了同样的问题。我卸载了它并安装了64位版本(因为我使用的是Windows 7 64)。即使将SDK添加到PATH变量中,Android SDK设置也无法正确找到Java!
经过一番挖掘,我在system32文件夹中发现了一个java.exe,该文件夹以PATH变量的顺序出现在我的SDK路径之前。重击我的system32文件夹中的java.exe之后,Android安装程序运行正常!
希望这会有所帮助。
看看源代码,它执行以下操作:
出现问题是因为您使用的是Windows的64位版本。这意味着
因此,要解决此问题,您需要将包含
您需要将包含
superuser.com上的此问题涉及在Windows 7中维护环境变量。
使用JDK检测真的很麻烦...
我的参数:Win 7 x64 JDK x64(JDK路径(c:\\\\ Program Files \\\\ Java \\\\ jre7 \\\\ bin)
谷歌搜索和使用env变量可能需要1个小时-没办法。
最后附带这样的解决方案
通过硬编码java.exe
的路径来手动编辑
1 2 3 4 5 6 7 | set java_exe=c:\\Progra~1\\Java\\jre7\\bin\\java.exe if not defined java_exe goto :CheckFailed :SearchJavaW set javaw_exe=c:\\Progra~1\\Java\\jre7\\bin\\javaw.exe if not exist %javaw_exe% set javaw_exe=%java_exe% goto :EOF |
那对我有用。
在SDK工具文件夹中,转到libs并编辑
将
我这样做了,错误消失了。
我在调用命令后将rem语句放在android.bat中,并对\\\\ bin \\\\ java.exe的路径进行硬编码:
1 2 3 4 | rem Check we have a valid Java.exe in the path. set java_exe=<..>\\jdk1.6.0_31\\bin\\java.exe rem call lib\\find_java.bat if not defined java_exe goto :EOF |
与设置其他变量javaw_exe相同,因此:
1 2 3 | set javaw_exe=<..>\\jre1.6.0_31\\bin\\javaw.exe if not exist %javaw_exe% set javaw_exe=%java_exe% goto :EOF |
对我有用的是:
将java / bin目录的路径添加到系统Path变量。不要包含java.exe。
Win 7 64位上的步骤:
- 单击Windows按钮
- 右键单击计算机
- 从上下文菜单中选择属性
- 单击左上方的"高级系统设置"
- 单击属性对话框底部的环境变量...按钮。
- 在底部列表(系统变量)上找到" Path"变量
- 点击编辑按钮
-
转到文本框的结尾,然后输入类似c:\\\\ program的内容
files \\\\ java \\\\ jdk1.6.0_26 \\\\ bin(确保与您的名称匹配
java目录!) - 点击确定
- 点击确定
- 点击确定
试试看!
hth,
\\\\ ^ / i l l
找到
1 2 3 | set java_exe= call :TestJavaDir"%JAVA_HOME%" if defined java_exe goto :EOF |
C:\\\\ Windows \\\\ SysWOW64
1下票
我也有同样的问题
->不小心安装了32位版本的Java SDK->卸载->安装了64位版本(Windows 7 64)->-> Android SDK安装程序未正确找到Java!
我发现C:\\\\ Windows \\\\ SysWOW64文件夹中漂浮着一个java.exe。
将这个java.exe重命名为javaX.exe之后,Android安装程序就可以正常运行了!