安卓工作室错误:尝试计算所需软件包时发生错误。

35

我正在尝试在 MacBook Pro 2015 上安装最新的 Android Studio。

不幸的是,我遇到了以下错误:

尝试计算所需软件包时发生错误。

这里是错误的截图:

enter image description here

这并不是很有信息性。是什么导致了问题?
编辑
当我从终端运行应用程序时,我得到了以下异常:
[  33666]   WARN - e.wizard.InstallComponentsPath - Dependant package with key emulator not found! 
com.android.tools.idea.sdk.wizard.SdkQuickfixUtils$PackageResolutionException: Dependant package with key emulator not found!
    at com.android.tools.idea.sdk.wizard.SdkQuickfixUtils.resolve(SdkQuickfixUtils.java:261)
    at com.android.tools.idea.welcome.install.ComponentInstaller.getPackagesToInstall(ComponentInstaller.java:51)
    at com.android.tools.idea.welcome.wizard.InstallComponentsPath.lambda$init$0(InstallComponentsPath.java:195)
    at com.android.tools.idea.welcome.wizard.InstallSummaryStep.generateSummary(InstallSummaryStep.java:115)
    at com.android.tools.idea.welcome.wizard.InstallSummaryStep.onEnterStep(InstallSummaryStep.java:106)
    at com.android.tools.idea.wizard.dynamic.DynamicWizardPath.next(DynamicWizardPath.java:311)
    at com.android.tools.idea.wizard.dynamic.DynamicWizardPath.next(DynamicWizardPath.java:58)
    at com.android.tools.idea.wizard.dynamic.DynamicWizard.showNextStep(DynamicWizard.java:346)
    at com.android.tools.idea.wizard.dynamic.DynamicWizard.doNextAction(DynamicWizard.java:336)
    at com.android.tools.idea.welcome.wizard.FirstRunWizardHost$NextAction.actionPerformed(FirstRunWizardHost.java:385)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.Component.processMouseEvent(Component.java:6533)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
    at java.awt.Component.processEvent(Component.java:6298)
    at java.awt.Container.processEvent(Container.java:2236)
    at java.awt.Component.dispatchEventImpl(Component.java:4889)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
    at java.awt.Container.dispatchEventImpl(Container.java:2280)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:795)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:627)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:387)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

编辑

谷歌已经修复了这个漏洞。只需下载新的安装程序,一切都应该没问题了。


1
我突然遇到了同样的问题。我似乎无法安装Android Studio,刚刚删除了它并尝试重新安装。我甚至尝试安装2.2.0版本,但是仍然出现相同的问题。 - Darren
1
不是真的。我已经删除了所有的工作目录并尝试了一遍,但什么都没用。希望很快会有人能解决这个问题...因为这真的很令人沮丧。昨天还好好的,然后当它试图更新到最新版本时,我开始遇到了严重的问题,说它无法更新由于冲突 - 因此卸载并尝试重新安装。我不会再这样做了! - Darren
1
可能是某个服务器的暂时性故障(希望如此)。 - Gianluca Ghettini
1
相同问题。使用Ubuntu 16.04。 - Karan Modi
1
看起来问题已经解决了。不再需要任何变通方法。 - Safwan
显示剩余6条评论
7个回答

20

更新:

有一个手动解决方法!

根据这篇帖子https://dev59.com/KlgQ5IYBdhLWcg3wdzvX#42733510

  1. 下载命令行工具,将它们放在SDK文件夹中(例如,在Mac上:/Users/user/Library/Android/sdk),然后将bin文件夹添加到PATH。
  2. 安装最新的平台:在终端中执行sdkmanager "platforms; android-25"
  3. 打开Android Studio,并转到SDK Manager(外观和行为>系统设置>Android SDK)
  4. 单击“编辑”,然后选择sdk文件夹。 然后“下一步”>“下一步”>“完成”。

但是,它无法解决缺少模拟器包的问题,因此无法更新Android SDK工具,因为它是依赖项。 但是,Android Studio可以使用,并且您可以下载其他包。

期待更好的解决方案。

更新2:

解决模拟器问题!

经过一番挖掘存储库的XML,我发现了问题所在。

事实证明,“emulator”包仅存在于通道3(金丝雀版)中,而“tools”包存在于通道0(稳定版)中,但依赖于“emulator”。解决方案是强制管理器从通道3下载“emulator”包:

./sdkmanager --channel=3 emulator

问题已解决!

之前的回答:

我也遇到了同样的问题。

我也在 Twitter 上 @androidstudio,希望能引起能够解决问题的人的注意。


@gianlucaghettini 你成功更新了 Android SDK 工具吗? - Charlie_Mtz
1
CLI工具只有在名为“tools”的子目录中才能正常工作(例如:/Users/me/Library/Android/sdk/tools),因此不要将它们从.ZIP目录中移出! - Jamie
在Ubuntu上,“配置”按钮被隐藏了,所以我不得不改变我的显示比例才能找到按钮,以便更改SDK位置。 - Honest Objections
更新3:这个问题现在应该已经在服务器端修复了(https://code.google.com/p/android/issues/detail?id=244956) - Tor Norbye
据说要下载命令行工具。但是我应该从哪里下载所谓的命令行工具呢?Android Studio网站上只包含Windows、Mac、Linux和Chrome OS的不同版本的Android Studio。我在那里没有看到任何命令行工具。有人能否请澄清一下?另外,请解释一下如何在Windows 7命令提示符中执行sdkmanager。我应该在CMD的默认提示符中运行它,还是需要cd到其他目录?Android Studio的安装过程非常复杂。Google必须对此进行研究。 - priyamtheone
显示剩余3条评论

5

2

经过多次尝试,我终于解决了问题。这是我的解决方案:

当出现“试图计算所需软件包时发生错误”时,我只需点击“完成”,然后前往主Android Studio页面:

enter image description here

然后选择配置 -> SDK管理器,并从那里启动SDK安装。

重新打开Android Studio,一切都很好

对于曾经非常好的软件来说,这真的非常令人尴尬。你可以感受到Eclipse的“臃肿”悄然而至。


4
不行,这样做不起作用。当我选择SDK管理器并尝试点击Android SDK的“编辑”链接时,SDK Android名称会出现,我点击下一步,但是仍然会出现相同的错误。 - dcalap

1

安装这些软件包,然后检查并设置jdkJAVA_HOME。 这对我有用。更多信息请参见link

sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386

1

我重新下载了安装程序,现在它可以使用了,我能够安装它。


1
这个解决方法对我很有用:https://dev59.com/DFEG5IYBdhLWcg3wPHii#69868954

只需下载IDE - Intellij IDEA并创建一个新项目,选择Android项目并下载Android SDK,现在您可以重新安装Android Studio并安装SDK。 对我有效!


我确认这是MBP Pro (M1 Pro)的正确答案。 如果您在尝试启动Android Studio时遇到“找不到带有关键字模拟器的依赖包!”错误,这个答案将解决您的问题 :) - Xavierh

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接