Xcode 8不能存档“命令/ usr / bin / codesign失败,退出代码1”

在macOS Sierra上,我在Xcode 8上遇到了严重的问题。 当我尝试构build我的应用程序时,出现以下问题。

CodeSign /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app cd /Users/me/Desktop/MyAppFolder1/MyAppFolder2/MyAppxcode export CODESIGN_ALLOCATE=/Users/me/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate export PATH="/Users/me/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Users/me/Downloads/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" Signing Identity: "-" /usr/bin/codesign --force --sign - --timestamp=none /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app: resource fork, Finder information, or similar detritus not allowed Command /usr/bin/codesign failed with exit code 1 

然后我做了以下的terminalhttps://forums.developer.apple.com/thread/48905 ,它的工作。 但一旦我清理干净,问题就回来了。

 cd /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp ls -al@ * xattr -c * 

此解决scheme不适用于以下问题的存档。 有没有解决scheme?

 CodeSign /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app cd /Users/me/Desktop/MyAppFolder1/MyAppFolder2/MyAppxcode export CODESIGN_ALLOCATE=/Users/me/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate export PATH="/Users/me/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Users/me/Downloads/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" Signing Identity: "iPhone Developer: My Name (**********)" Provisioning Profile: "iOS Team Provisioning Profile: com.**********.*********" (********-****-****-****-************) /usr/bin/codesign --force --sign **************************************** --entitlements /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/IntermediateBuildFilesPath/MyApp.build/Release-iphoneos/MyApp.build/MyApp.app.xcent --timestamp=none /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app: resource fork, Finder information, or similar detritus not allowed Command /usr/bin/codesign failed with exit code 1 

我在苹果论坛上find了这个解决scheme

 cd ~/Library/Developer/Xcode/DerivedData xattr -rc . 

要么

 xattr -rc ~/Library/Developer/Xcode/DerivedData 

解决scheme1:

你可以尝试文件特定的bash命令,如Mark McCorkle回答。

在terminal中,转到项目的根目录并逐个执行命令

  find . -type f -name '*.jpeg' -exec xattr -c {} \; find . -type f -name '*.png' -exec xattr -c {} \; find . -type f -name '*.tif' -exec xattr -c {} \; 

清理Xcode和重build。 完成。

解决scheme2:

您可以通过查找保存查找器信息的文件来解决这个问题。

在terminal中,转到项目根目录并执行

 ls -alR@ . > kundapura.txt 

这会在当前目录中创buildkundapura.txt。 现在searchcom.apple.FinderInfo并清除所有文件的这个属性。 你可以这样做

 xattr -c <filename> Example: xattr -c guru.png 

一旦你清除所有,那么你可以编码的标志。 干杯

对我来说这个工作:

 cd ~/Library/Developer/Xcode/DerivedData xattr -dr com.apple.FinderInfo * 

然后重build

有一个更永久的解决办法。 修复DerivedData中的属性的工作,但问题不断回来。 当你得到'资源分叉,查找信息或者不允许的类似碎片'时,你需要做的就是进入显示的目录,这个文件包含.App文件。 然后执行…

xattr -lr MyAppName.App

然后您可以看到具有需要删除的属性的资源文件。 不要从.App文件中删除它们,find项目中的原始文件并打开包含它们的目录并执行…

xattr -rc。

然后这修复了原始文件。 然后重build应该运行正常。 它也应该也适当地重build为档案。

这是由于某些资源文件在文件系统上具有额外的属性(可能是由macOS Sierra引起的)引起的(正如我在升级到macOS Sierra后开始的那样)。

尝试在整个DerivedData文件夹中执行xattr -c * (如https://forums.developer.apple.com/message/178039#178039中的答案所述):;

 cd ~/Library/Developer/Xcode/DerivedData xattr -c * 

在debugging时,只删除构build文件夹中的属性可以解决问题。 在整个DerivedData文件夹中删除属性也为我进行归档。 请注意,这可能会导致其他后果(尽pipe极不可能),但是您可以随时删除DerivedData文件夹,并且会重新生成,以防万一。

另外,如果它仍然失败,执行命令后清理项目( 不是生成文件夹)是一个好主意。

我有一个来自CocoaPods包的文件的问题。 我已经将CocoaPods更新到最新版本并运行:

 pod install 

之后,问题就消失了。

在我的情况下问题是configurationconfiguration文件和帐户,我通过执行以下步骤来解决:

  1. Xcode首选项 – >帐户 – >删除已经添加的帐户,并再次添加它
  2. 生成新的供应configuration文件并安装在Xcode中
  3. 清理项目并重build它

我想显示我的答案,因为它可能是有趣的(我浪费了很多时间,这个错误)

错误截图

以前没有一个答案(得分高)对我有用。

他们可能是对的,但是他们没有解决我的问题。

起源:

我添加了一个新的目标到我的iOS应用程序:iMessage

当我添加PNG图像资产。 xcassets,发生错误。

解:

使用“Apple Preview App”制作png图像的副本,并取消选中Alpha。

预览应用截图

错误消息消失。

预览应用截图

就我而言,

  • Xcode首选项

  • 地点

  • 点击Project Path箭头

  • 在DerivedData文件夹中search您的项目名称

  • select项目文件夹,右键单击并移至垃圾箱

完成!

我在macOS Sierra 10.12.3,Xcode 8.2上遇到这个错误。 修复DerivedData没有为我工作。

在我删除了Keychain Access中的过期Apple全球开发者关系证书颁发机构证书后,错误消失了。

有时,即使您修复了和/或正确的代码签名, 问题可能会潜伏在第三方软件包中

如果您仔细检查出构build错误,则可能会在错误消息中find第三方库的名称。

在这种情况下,您必须重新构build您的第三方库。 例如在我的情况下,通过carthage update ,现在构build成功。