【发布时间】:2012-07-06 03:27:10
【问题描述】:
我已经为此进行了多次搜索,但没有一个答案对我有用。该机器是全新的 Windows 7 64 位 PC。我有整个 SDK,Eclipse 系统在我的旧 32 位 PC 上运行没有问题,但我正在尝试迁移到新的。
我尝试过的事情:
- 确保 JDK 的 bin 目录是我的 PATH 中的第一个目录,以免使用 C:\windows\system32\java.exe
- 在两种情况下都尝试了 JDK 6 (6u32) 和 JDK 7 (7u5),x64 版本
- 以管理员身份运行
我试图查看是否有任何错误,所以我从命令提示符运行它。完全没有消息,只是什么也没发生。我试过重新启动。
我做的一件事使它运行(但在我看来这不是最好的方法)是编辑 tools/android.bat 文件。我摆脱了对 java.exe 的搜索(基本上就是对 find_java.bat 的调用),直接在 android.bat 文件中设置了 java_exe 环境变量。
我有什么遗漏或者这是最好的方法吗?这似乎有点不直观。
【问题讨论】:
-
你能从命令行运行Java吗?
-
是的。并运行“where java”返回 jdk 位置(第一个)和 system32 位置(第二个)。
-
你得到了 64 位版本的 eclipse 吗?
-
是的,尽管问题不在 Eclipse 中。它与 Android SDK Manager 尝试使用 Java 启动的方式有关。一旦我修改了 tools/android.bat 只相信我的 PATH 环境变量是正确的,而不是试图找到 java.exe 的位置,一切正常。这感觉像是 SDK 系统中的一个错误。我的猜测是它无法处理路径名中的空格(即“程序文件”)。我将尝试将 java 重新安装到没有空格的不同目录中,看看是否能解决问题。它正在运行,所以我可以工作,我只是不喜欢手动进行更改。
-
好点 - 我记得我的新 windows x64 有空间名称问题,总是创建一个名为“dev”的目录并在那里安装所有东西,是的,然后很糟糕,因为你必须管理每个安装与默认。您可以尝试删除类路径中的 32 位 java 调用,看看它是否有效。