Xcode 4 - переустанавливает сертификаты цепочки для ключей, которые я удаляю - PullRequest
85 голосов
/ 10 марта 2011

Я получаю эту ошибку:

Ошибка CodeSign: идентификатор сертификата «Разработчик iPhone: XXX» появляется больше чем один раз в брелок. Инструмент CodeSign требует только быть один.

Сначала я, хотя, не беспокойтесь, я просто зайду в цепочку для ключей и удалю дубликат (старый), что я и сделал. Я вернулся, закрыл Xcode, снова открыл Xcode и проект, та же ошибка. Встф я хоть для себя. Вернуться в брелок, и сертификат снова там. Я удаляю оба сертификата, повторяю и замечаю, что при загрузке проекта два удаленных сертификата возвращаются в цепочку ключей.

После долгих поисков я убедился, что у меня нет сертификата в системной цепочке для ключей, чего у меня не было. Также сделал чистый и восстановить. Когда у меня были дубликаты с Xcode 3, я мог просто очистить дубликат цепочки для ключей, и я был в порядке. Но с Xcode 4 он буквально просто переустанавливает их как-то, когда я открываю проект. Я даже удалил все файлы .cer в моей системе, из которых они могут извлекать их.

Есть предложения?

Ответы [ 16 ]

0 голосов
/ 11 апреля 2013

Только что установил Xcode 4.6.1 и снова начал возникать эта проблема. Последний раз был давно. Я удалил старые профили инициализации и сертификаты, но все еще не смог собрать.

На этот раз оказалось, что у меня было 2 сертификата для меня в учетной записи команды на портале для разработчиков. Первый истек, второй не было. Xcode продолжал захватывать первый найденный во время обновления (или, может быть, оба).

Я удалил оба сертификата из цепочки для ключей, затем вручную загрузил хороший с портала Apple и вручную добавил его в цепочку для ключей. Теперь я могу строить снова.

(И я отправил администратору команды запрос на удаление старого сертификата.)

0 голосов
/ 23 октября 2012

Другая причина того, что xcode продолжает устанавливать ваш сертификат, заключается в том, что вы не удалили ключ, только сертификат.Вам необходимо удалить закрытый ключ (и соответствующий открытый ключ), а также сертификат в цепочке для ключей, иначе xcode переустановит сертификат.

Проверьте здесь Чтобы удалить сертификаты разработки и распространения из цепочки для ключей

0 голосов
/ 03 октября 2012

Во всяком случае, @AndreasPrang, ваш ответ сработал, когда все вышеперечисленное не сработало.Я мог видеть, что сертификат с истекшим сроком действия нигде не был в цепочке для ключей, но когда я делал сборку, Xcode сказал, что это так.Удаление профилей обеспечения (все они), выбор моего имени в разделе «Команда» и нажатие на значок обновления в правом нижнем углу органайзера также не помогли.Перезапуск XCode не помог, но выключение XCode, удаление ~ / Library / Developer / XCode сделали.Когда я перезапустил XCode, он перестроил все и был счастлив.

0 голосов
/ 06 сентября 2012

Цитируя ответ на дубликат этого вопроса, некоторые ошибки XCode в этой области могут быть решены только путем перезапуска OS X .

В конце концов, я добился успеха, удаливвсе упомянутое в любом из ответов на этот вопрос, перезапуск, затем ручная установка необходимых мне частей (я не доверял / не пробовал автоматическую функцию загрузки профиля / сертификата).

0 голосов
/ 01 сентября 2012
  1. Удалить ~ / Библиотека / Разработчик / Xcode
  2. Очистить проект

build ...

0 голосов
/ 05 мая 2012

вышеупомянутый метод не работает для моего случая

наконец, я иду в цепочку для ключей

и ищу ключ, вводя имя

я наконец нашел сертификат, который являетсядолжен быть удален раньше.затем я удалил его, и проблема решилась

это действительно расстраивает, и я не знаю, является ли это ошибкой ....... действительно утомительно.

...