2013-02-23 84 views
1

我一直在试图解决这个问题,在过去的48小时内,它让我疯狂。android.bat打开SDK管理器,SDK Manager.exe并不

我的SDK Manager.exe会闪烁cmd屏幕并在不到一秒钟内关闭。

经过大量搜索,我终于设法让我的SDK管理器在调整android.bat后打开,并以管理员身份运行。

但是,SDK Manager.exe无法找到android.bat,所以我将它复制到了android-sdk文件夹中。

SDK Manager.exe现在能够找到android.bat,但它仍然短暂闪烁cmd,然后关闭。

我的PATH变量有我的jdk java.exe目录作为第一项,并且我重新启动并重新安装了好几次。

这是什么造成的?为什么我能够从android.bat打开管理器,但不能从可执行文件打开?

我想配置Eclipse使用SDK管理器,但显然我不能,因为可执行文件拒绝打开。

Eclipse也告诉我,adb.exe丢失,并在检查平台上,我已经证实了这一点。我认为adb.exe将从SDK管理器安装?

编辑:想过之后,我想这个问题可能是android.bat的权限。它必须以管理员身份运行才能工作,否则如果定期打开,则会显示“访问被拒绝”。

可以改变这个吗?查看android.bat的属性,我已经调整了我的帐户以完全控制。不过,这并没有影响到这个问题。

回答

0

我有同样的问题!

我已经安装了ADT软件包64位,所以我下载了Java 64位。 我搞砸了路径和事情,但最终修复它的东西是安装了Java 32位。

简单的修复方法是安装两个版本。你可以手动下载here

祝你好运!

0

我不知道它是否会解决你的问题,但要确保你已经安装了jre和jdk和android sdk的同一位系统(我的意思是说所有三个都是32位或64位系统)。 我曾经有一个基于此的android问题! 如果您将它们用于一个系统,请尝试重新安装它们。 我有一个类似的问题,并将所有版本更改为64位后,它工作。 希望我能帮助你。

+0

嘿谢谢你的回答。 我从这里下载了sdk:http://developer.android.com/sdk/index.html 我没有下载adt包,只有工具。它看起来像只有一个版本,所以我不认为这是一个系统问题。 – AshesOfTheWake 2013-02-23 09:16:52

+0

比我不能帮你。不好意思,朋友! – j0chn 2013-02-23 09:57:42

0

当您'以管理员身份运行'时,当前目录被更改,因为您正在模拟其他用户。为了证明这一点把下面一行在你的bat文件的顶部:

echo.CD=%CD% & pause 

然后执行你的bat文件,作为一个普通用户,并观察结果。

现在通过'以管理员身份运行'执行bat文件并注意CD已经更改为C:\ Windows \ system32(典型)。

修复很简单。把下面的行放在批处理文件来恢复当前目录:

pushd %~dp0 

它需要你引用任何文件/文件夹之前。我通常会将该行放在所有可能以“管理员身份运行”的bat文件的顶部附近。如果用于较旧的(XP)操作系统,它不会伤害任何东西。

+0

感谢您的回复RGuggisberg。这两个目录确实不同,但不幸的是,在运行SDK Manager.exe时添加pushd%〜dp0并没有什么区别。 – AshesOfTheWake 2013-02-24 02:57:03

1

我在一些机器上经历过这种情况,但没有经历过其他机器。这是一个奇怪的问题,我相信它必须处理其中一个android文件(android.bat?)中的路径问题。

为什么在一些安装中发生这种情况,而不是我还没有弄清楚的其他人。我已经阅读了所有可以在这里和网页上找到的所有内容,尝试了许多不同的解决方案,包括安装另一版本的JDK 6和7,修改路径变量,添加JAVA_HOME变量等等,但都没有成功。

这在Windows 7中工作对我来说...

1)增加“SDK的manager.exe”文件的副本,里面的SDK文件夹(所以它旁边的工具,平台等人的文件夹)然后运行它。您仍然会看到命令窗口“闪烁”一秒钟然后消失,但要耐心等待SDK管理器显示。

2)创建一个快捷方式到此SDK Manager.exe的“内部”副本并将其移动到您想要的任何位置;它现在知道去哪里查找文件并且每次都能正常工作。我的桌面上有一份副本,但放在哪里并不重要。

注意:某处仍然存在问题,这可能与Google有关,但似乎发生在某些人身上,无论他们进行安装的时间是什么/什么时候,而其他人完全没有问题。

这可能不是我们需要让Google修复它的答案,但它不需要卸载/重新安装java或SDK,修改/添加变量,修改android.bat,更改路径,以admin身份运行等等。 。,最好的部分是它很容易。我们很多人都浪费了数小时的时间来修复它。

祝你好运!

注:我添加了关于x64机器的评论。这很奇怪,但是当我们在一台x64(OS/ADT)机器上尝试它时,它不起作用。我刚刚尝试了新安装的Java 7 x64和ADT x64,它在32位安装(这意味着我现在在同一台机器上同时安装了32位和64位Java和ADT)的计算机上,并且它可以正常工作。一瞬间,它就消失了,然后SDK管理器按预期打开。神秘仍在继续。 :)

+0

还有一点。我能够在32位Android安装(在Win7 x64操作系统上)修复此问题,但它在另一台Win7-x64/Andoird-x64机器上无法正常工作。不确定它是否相关。 – Zeus56 2013-03-19 13:31:59

+0

感谢您的回答宙斯。我厌倦了它,并完成了我的JRE,JDK和Eclipse的重新安装,但这次使用ADT Bundle。修复了这个问题。 – AshesOfTheWake 2013-12-07 06:48:18

+0

谢谢!这对我来说确实很有用。 – nrodic 2014-07-28 19:02:23

0

我对于Windows 8.1 64位和JDK8有同样的问题。我卸载了JDK8x64并安装了JDK8i586,现在它像一个魅力。

1

当我将我的android SDK工具更新到23.0.2时,我遇到了同样的问题。花了很多时间(大约6个小时)搞砸了寻找修复程序...我找到了它,但仍不确定它是如何工作的。

它与android有关。在你的Android SDK目录的工具文件夹bat文件,在线路:

set java_exe= 
call lib\find_java.bat 

我修改了进线以下值:

set java_exe=pathwhereyoufindjavaexe 
REM call lib\find_java.bat 

基本上,两两件事都做了:

  1. 将您的java_exe变量设置为您的Java.exe路径

  2. Delete,or comme NT中的一句话:“打电话的lib \ find_java.bat”

我评论第二行,因此不会通过find_java.bat重新设置我的java_exe变量,并手动设置我的java_exe变量设置我的Java。 exe文件是。如果您不知道您的java.exe在哪里(或忘记了在哪里),请尝试使用Windows搜索。

我的java.exe路径与使用find_java.bat找到的路径不同。 我的实际路径:

U:\PortableApps\CommonFiles\Java\bin\Java.exe 

find_java.bat将其设置为路径:

C:\Windows\systems32\java.exe 

注: 我想通了什么路径 “调用的lib \ find_java.bat” 通过添加设置java_exe变量继线本身如下命令:

echo %java_exe% 
pause 

我不知道这是否是某种形式的许可或访问错误的,或者这种解决方案只是为我工作SI我的Java JDK在USB设备或类似的。好吧,如果有人遇到这个问题,试试我的解决方案,看看它是否也适用于你们。