46

我已经下载了 Xcode 8 beta .xip 文件。我无法解压缩。打开文件只是坐在那里几个小时说“正在验证......”

如果我从命令行尝试,我会得到以下信息......

Downloads unzip Xcode_8_beta.xip 
Archive:  Xcode_8_beta.xip
  End-of-central-directory signature not found.  Either this file 
  is not a zipfile, or it constitutes one disk of a multi-part archive.        

  In the latter case the central directory and zipfile comment will be
  found on the last disk(s) of this archive. unzip:  cannot find 
  zipfile directory in one of Xcode_8_beta.xip or Xcode_8_beta.xip.zip, 
  and cannot find Xcode_8_beta.xip.ZIP, period.
4

12 回答 12

60

.xip文件格式包含存档(xar 包含 gzip 存档和元数据)和存档签名。签名很重要,因为以前 Xcode 下载已被更改(例如 XcodeGhost)以将恶意代码注入应用程序。因此,跳过验证(xattr -d com.apple.quarantine Xcode_8_beta.xip)之类的方法似乎是不负责任的。

强烈建议您尝试Archive Utility.app在取景器中打开它。如果签名检查不起作用,请尝试重新下载。

如果您想调查是否经过.xip有效签名或出于任何原因想要在没有存档实用程序的情况下对其进行扩展,您可以使用pkgutil

pkgutil --check-signature Xcode_8_beta.xip

输出应该是这样的:

    Package "Xcode_8_beta.xip":
       Status: signed Apple Software
       Certificate Chain:
        1. Software Update
           SHA1 fingerprint: 1E 34 E3 91 C6 44 37 DD 24 BE 57 B1 66 7B 2F DA 09 76 E1 FD
           -----------------------------------------------------------------------------
        2. Apple Software Update Certification Authority
           SHA1 fingerprint: FA 02 79 0F CE 9D 93 00 89 C8 C2 51 0B BC 50 B4 85 8E 6F BF
           -----------------------------------------------------------------------------
        3. Apple Root CA
           SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60

如果该签名不是由您的钥匙串中的 Apple 根 CA 签名的,您可能应该停在那里。如果到目前为止一切正常,您可以运行以下命令:

xar -xf Xcode_8_beta.xip
sudo tar zxvf Content
于 2016-06-16T10:56:16.400 回答
38

我不确定为什么存档实用程序在使用这些存档时遇到这么多麻烦,但只要您的下载本身没有损坏,手动提取应用程序包对我来说始终有效。顺便说一句,我正在使用 10.12 GM 种子 (16A320)。

Xcode.app捆绑包位于 CPIO 存档中,该存档被xz'd 然后打包到 v2(即 Yosemite)PBZX 流中(如 Yosemite/Sierra 安装包中的有效负载)。生成的流与一些元数据捆绑在一起,然后签署分发。摆脱所有这些混乱并不难,但需要一点努力。

(如果你想看看这是什么样子,这是我刚刚做的记录,包括文件大小和证书 SHA1 哈希。)

  1. 验证签署档案的签名和证书链。

    pkgutil --verbose --check-signature ./Xcode_8_GM_seed.xip
    
  2. 从存档中提取 PBZX 流。

    xar -xf ./Xcode_8_GM_seed.xip
    
  3. 获取一个 PBZX v2 解包器并...解包打包的东西。

    curl -O https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py
    python parse_pbzx2.py Content
    
  4. 解压缩存档(应该只有一个块,“part00”)。

    xz -d Content.part00.cpio.xz
    
  5. 以特权用户身份解压 CPIO 存档(因为设备框架有奇怪的符号链接,cpio否则会报错,并且无论如何它都需要由 root 拥有)并将生成的 Xcode 应用程序包移动到/Applications.

    sudo cpio -idm < ./Content.part00.cpio
    sudo mv ./Xcode.app /Applications/
    

它应该会提示您在首次启动时执行安装后设置步骤。

于 2016-09-14T11:36:18.610 回答
31

XIP 文件(就地提取)只是一个特殊的存档,用于验证 Apple 的未存档。在 2014 款 MacBook Pro i7 上,Xcode 8 二进制文件需要 30 多分钟才能提取。如果文件在近一个小时后没有取得太大进展,请重新下载存档并再次尝试解压缩。

此外,Xcode 8.0 测试版需要运行 macOS 10.11.4 或更高版本的 Mac。确保您的系统版本受支持。

Xcode 8 Beta 2 注意:安装 Beta 2 需要 macOS 10.11.5 或更高版本。

于 2016-06-14T13:55:28.073 回答
6

我一直收到有关存档损坏的错误消息,因为我使用Unarchiver作为我的解包程序。无论出于何种原因,它无法处理数字签名检查,因此手动选择使用存档实用程序打开 .xip 文件为我解决了问题。

在此处输入图像描述

于 2016-11-07T14:44:05.130 回答
5

打开终端

1.cd拖放你的xcode(路径)然后输入

2.xattr -d com.apple.quarantine Xcode-beta.xip 进入

于 2016-06-17T13:06:12.133 回答
2

我也收到了这个错误

  1. 我将我的 mac OS x 版本更新到 10.11.6。我认为 10.11.4 是运行 Xcode 8 的最低 OS x 版本。

  2. 确保您有 40 GB 的最小空间来解压缩 Xcode_8_beta_5.xip 或 Xcode_8_beta_2.xip

然后解压缩它。这个 Xcode 版本将比其他版本占用更多空间。

于 2016-08-13T12:08:16.087 回答
2

重新启动我的系统对我有用。

于 2016-07-13T19:12:20.897 回答
0

我收到了这个错误,我做了以下事情:

简单的方法是升级您的 Mac OS x 版本 10.11.5 并尝试使用存档实用程序解压缩文件,它将提取“XIP”文件。

我升级了我的mac os,这对我有帮助。我能够摆脱解压缩错误。

希望这可以帮助!

于 2016-07-14T21:15:28.137 回答
0

重新启动系统对我有用。请检查一下。或者尝试关闭所有应用程序、Xcode、模拟器等。确保 Mac OS 10.11.5 及更高版本。

于 2016-09-23T16:47:13.180 回答
0

使用

这是我所做的:

  • 使用存档实用程序在 10.12 上提取
  • 将 Xcode-beta.app 复制到 10.11
  • Xcode-beta.app 似乎在 10.11 上运行良好。

在 El Capitan 上,当我尝试使用存档实用程序提取在 macOS Sierra 上提取的相同下载的 .xip 文件时,存档实用程序挂起。

于 2016-09-28T03:09:52.190 回答
0

检查您的 Xcode 版本,它应该是最新的或按照 Xcode 版本。希望这能解决您的问题。

于 2016-08-16T19:56:09.877 回答
0

即使我运行的是最新的 el capitan (10.11.5),我也遇到了同样的问题。根据 Chris P 的评论,我从 Recovery ( https://support.apple.com/en-us/HT204904 ) 重新安装了 OS X,然后一切正常。显然,在我之前的 App Store 更新之一中没有正确安装某些东西。

于 2016-06-19T09:36:09.130 回答