更新Android SDK:“无法移动文件夹”。

时间:2011-12-18 21:54:34

标签: android sdk

尝试更新Android SDK时,我在尝试安装此特定软件包时遇到此错误:

enter image description here

我该如何解决这个问题?

25 个答案:

答案 0 :(得分:95)

这种情况偶尔发生在我的Windows SDK 上(即使我没有运行任何防病毒或类似程序,以管理员身份执行SDK-Manager等等)

在这种情况下,我只是手动更新工具。这意味着在错误发生后关闭SDK-Manager并打开ANDROID_SDK\temp文件夹。应该有一个名为tools_R16.zip或类似的拉链(不记得确切的名称)。解压缩。您最终应该使用tools文件夹。将此文件夹中的所有文件复制到ANDROID_SDK\tools。被问及时覆盖。并预先备份SDKs工具文件夹,以防万一爆炸。

之后,再次启动SDK-Manager。工具版本应该更新。

答案 1 :(得分:63)

问题似乎是Eclipse,甚至SDK Manager本身都锁定了文件夹。从tools文件夹运行android.bat应该可以解决问题。

答案 2 :(得分:37)

如果您从Android Studio启动了SDK Manager,那么您需要做的就是关闭Android Studio。

我认为SDK Manager是一个模态对话框,它是Android Studio的一部分 - 而不是一个单独的程序。

答案 3 :(得分:7)

感谢。这就是我修复它的方法:

在这种情况下,我手动更新了这些工具。这意味着在错误之后关闭SDK-manager并打开文件夹android-sdk-windows文件夹。使用LockHunter解锁所有程序,锁定android-sdk-windows \ tools \文件夹。 http://lockhunter.com/?ver=&vertype=pro&sm=main_window_64

事先将android-sdk-windows \ tools文件夹重命名为tools_DELETEME 应该有一个名为android-sdk-windows \ temp \ tools_r19-windows.zip的zip。打开它,你应该看到一个工具文件夹。将该工具文件夹复制到android-sdk-windows \ tools

之后,再次启动SDK管理器。工具版本应该更新。

答案 4 :(得分:5)

您可能从eclipse启动了SDK管理器?我解决了同样的问题,并通过从directy工具手动打开SDK管理器来修复它。

答案 5 :(得分:5)

安装工具/软件时,请使用SDK管理器。但是在更新时不要使用它。右键单击 - >在android-sdk-windows \ tools \ android.bat文件中以管理员身份运行以更新工具。始终尝试在Windows Vista / 7/8上以管理员身份运行命令。这将解决大多数许可问题等......

答案 6 :(得分:3)

我的解决方案是在eclipse中以管理员身份启动它。

答案 7 :(得分:3)

我在Windows 7上遇到了同样的问题...问题是在更新期间它尝试重命名工具文件夹(在SDK文件夹内),并且该文件夹由当前正在运行的进程“ADB”使用。 ..

因此,在停止/终止该过程之前,您无法顺利进行更新...

BTW拷贝从temp中粘贴工具文件夹的新内容也会起作用...

答案 8 :(得分:2)

使用Windows 7,当“无法安装弹出窗口”出现时,会终止名为adb的进程(来自任务管理器ctrl + alt + del),然后按“是”并正在安装内容。

答案 9 :(得分:1)

确保您没有其他应用程序(包括资源管理器)打开/使用任何基本文件或文件夹。

答案 10 :(得分:1)

我尝试运行android.bat并得到了同样的错误。

对我有用的是使用解锁器解锁\ tools文件夹。

答案 11 :(得分:0)

在我的电脑上,它是由后台运行的monitor.exe引起的。终止该过程解决了这个问题。

答案 12 :(得分:0)

我刚停止了模拟器,问题解决了。

答案 13 :(得分:0)

通过访问studioprocess从任务管理器关闭当前启动的android studio窗口(因此,当关闭时,当前没有活动的工作室窗口)。然后转到Windows资源管理器中的Android工作室,选择studio64 / studio(如果是32位操作系统)并右键单击并选择以管理员身份运行。 在一行中 - 您需要以管理员身份运行Android Studio enter image description here

答案 14 :(得分:0)

这些是我遵循的步骤。

  • 重新启动计算机。
  • 以管理员身份打开“C:\ android \ androidStudio \ sdk \ tools \ android.bat”。
  • 现在安装包应运行正常。

答案 15 :(得分:0)

我知道这是一篇旧帖子,但我想写下我个人解决问题的方法:

  

无法将目录C:\ android-sdk \ tools重命名为C:\ android-sdk \ temp \ ToolPackage.old01。

显然我遇到了同样的问题,每次Android工具都需要更新时,这是一场噩梦。

我发现用谷歌搜索网络的解决方案现在都没有为我工作,但这对于维护Android SDK的更新至关重要。所以我开始寻找另一种解决这个问题的工作方式,最后我发现它......至少......它对我有用,即使它有点棘手。

基本问题是 android.bat 批处理文件来自〜\ tools \文件夹,它仍在内存中(正在运行),同时需要更新〜\ tools \文件夹(在我们的例子中,重命名)。

问题是android.bat运行java来启动swt.jar(SDK工具),它仍然无用地等待完成这个java程序。

您可以编辑android.bat并在此批次的最新行中查看该调用:

call "%java_exe% %REMOTE_DEBUG%" "-Dcom.android.sdkmanager.toolsdir=%tools_dir%" "-Dcom.android.sdkmanager.workdir=%work_dir%" -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*

问题是“调用”CMD命令。它等待被调用的外部程序完成。

但另一种方法是从批处理文件中运行外部程序:“启动”命令。它启动一个外部程序并终止。

所以我只是用“start”替换了“call”命令,所以在更改之后我的android.bat的最新一行是:

start "" "%java_exe% %REMOTE_DEBUG%" "-Dcom.android.sdkmanager.toolsdir=%tools_dir%" "-Dcom.android.sdkmanager.workdir=%work_dir%" -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*

注意:在开始和应用程序路径之间保留“”。您可以在这些连字符中添加文本,此文本将是您在更改后将看到的java.exe命令窗口的标题。在我的情况下,我将标题保留为空字符串,但您可以在那里写下您想要的内容。

更改后,您可以启动SDK,android.bat将不再等待,让SDK工具免费播放(并重命名〜\ tools \文件夹,不会头疼)。

显然,更新SDK工具后,您必须在新的,更新的android.bat批处理文件中重做相同的更改。这可能有点不合适,但您只需要记住在运行SDK工具之前进行更改,并且在更新Android时不会有其他麻烦。

答案 16 :(得分:0)

在Ubuntu中为我解决了问题

  1. cd [tools / directory / path]
  2. sudo ./android

答案 17 :(得分:0)

通过杀死任务管理器中的adb.exe来解决这个问题。

答案 18 :(得分:0)

首先在同一目录(android-sdk或android-sdk-windows)中复制tools文件夹,然后删除原始工具文件夹,然后双击tools-copy文件夹打开android.bat文件,启动sdk manager并安装工具。

如果没有删除工具文件夹,请使用解锁器LockHunter删除该文件夹,然后打开android.bat以更新工具。

成功安装工具后,删除tools-copy文件夹。

如果打开,请关闭Eclipse或Android Studio。

它对我有用!!!

答案 19 :(得分:0)

我在更新sdk时遇到了同样的错误。这是因为目标文件夹已锁定(访问权限被拒绝)。     您可以在“Ubuntu”中按如下方式解决它: -

按ALT + F2并输入'gksudo nautilus',然后导航到目标文件夹,例如工具或其他内容,并提供创建和删除权限。     然后更新,每件事都会正常工作:)

答案 20 :(得分:0)

错误消息为Failed to rename directory C:\devtools\android-sdk\system-images\android-21\google_apis\x86 to C:\devtools\android-sdk\temp\SystemImagePackage.old01。我手工删除了C:\ devtools \ android-sdk \ temp \ SystemImagePackage.old01目录(它是一个遗留物?我不知道),它能够继续。

答案 21 :(得分:0)

我必须复制tools文件夹本身(将它保存在同一目录树中) 级别,因此“工具”和“工具副本”都在“android-sdk-windows”文件夹中。 然后从该副本运行Android.bat。

更新后只需删除tools-copy文件夹。

答案 22 :(得分:0)

我的问题是Windows 7安全性。我在C:\Program Files\Android上打开了安全性,并且完全访问了所有人,然后就可以了。然后我在更新完成后删除了所有人。

答案 23 :(得分:0)

在Windows 7和Vista上,以管理员身份运行Eclipse。

答案 24 :(得分:0)

我之前读过,人们会获取platform-tools文件夹的副本并从其他位置运行更新。这可以确保您没有打开它正在尝试更新的文件。

也可以将你的防病毒软件停用5分钟o0o0。