2017-04-18 6 views
1

Je suis en train de créer une application iOS dans la configuration de Debug | iPhone sur Mac Xamarin, mais je suis obtenir:Xamarin ne peut pas générer sur le périphérique - Outil quitté avec le code: 1. Sortie: erreur: l'élément spécifié est introuvable dans le trousseau

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets: Error: Tool exited with code: 1. Output: error: The specified item could not be found in the keychain.

tout a commencé quand je devais réinitialiser mon trousseau par défaut et perdu mes certificats. Je l'ai essayé de le fixer par:

  • Création d'un nouveau certificat manuellement (assurer que j'avais « Apple Worldwide Developer Relations Autorité de certification » lors de la demande du certificat de l'autorité de certification, comme le suggère here)
  • Création d'un certificat à l'aide xcode 8.3.1 (exporter ce certificat sur une autre machine me permet de construire correctement sur cette machine)
  • Importer mes certificats de mon ancien trousseau (chaque fois que j'ai créé un nouveau certificat, j'ai mis à jour et téléchargé le profil d'approvisionnement)
  • exporter un certificat de travail d'un autre us er sur une autre machine et l'importer sur ma machine
  • désinstaller Xamarin studio, en supprimant les dossiers mentionnés here, et en installant Xamarin Studio 6.1.3 + Xamarin.iOS 10.4.0.123 (utilisait auparavant 6.1.3 + 10.2.1.5)
  • Xcode 8.1 et désinstaller l'installation Xcode 8.3.1
  • installer Visual studio pour Mac (ce qui m'a donné une autre erreur "tâche EnsureBindingRedirects a échoué de façon inattendue" - probablement un bug séparé)

Le fait qu'il n'a pas réussi à construire lors de l'utilisation d'un combo de certificat de travail/profil d'approvisionnement connu sur une autre machine, je pense que Xamarin a un problème pour trouver le certificat lors de la génération, même s'il voit le certificat et le profil d'approvisionnement dans Options du projet -> Signature de l'ensemble iOS. Il pourrait aussi y avoir un problème dans le Keychain quelque part.

Toute aide à ce sujet serait grandement appréciée.

Répondre

1

Je fixe ce en procédant comme suit:

  1. security dump-keychain -d login.keychain à la liste tous les articles dans mon trousseau

  2. Remarqué il y avait un certificat supplémentaire qui ne montrait pas dans Trousseau d'accès

  3. Effacé cet article utilisant security delete-identity

  4. D id diskutil resetUserPermissions/$(id -u) et redémarré mon Mac

Je ne sais pas si les étapes 1-3 sont nécessaires, donc si vous rencontrez ce problème, je voudrais essayer de l'étape 4 d'abord et voir si cela fonctionne.