Я обновил OS X Yosemite, а также Xcode 6.1 (скачанный с сайта разработчика), с этого времени у меня возникла проблема со зданием, как в файле журнала, я вижу заметку Msgstr "Предупреждение: правила -resource устарели в Mac OS X> = 10.10!". Кто-нибудь знает, как использовать плагин Xcode без флага «правила ресурсов»? Спасибо.Jenkins vs. Xcode plugin - проблемы с кодовым кодом
ответ
Все в порядке с плагином Дженкинса. Неверные настройки продукта.
Откройте вкладку «Настройки сборки» вашего проекта. Искал «Code Signing Resource Rules Path», он был пуст для меня. Изменить на: $(SDKROOT)/ResourceRules.plist
кредитов идет на Адамса Блэра, который описал эту проблему с SDK2.2
https://stackoverflow.com/a/7919137/2124345
Update
Это решение не устраняет саму предупреждение. Но я уверен, что предупреждение не проблема. Проблема в том, что без этого параметра файлы ResourceRules.plist не генерируются в папке Payload, а процесс сборки останавливается, потому что файл отсутствует.
И снова, это не связано с плагином дженкинсов вообще. То же самое происходит с xcrun -sdk iphoneos PackageApplication
. Дженкинс просто называет эту командную строку как шаг сборки.
Спасибо, Julius за объяснение, я никогда не использовал «Code Signing Rules Path», у меня это поле всегда пусто. Также я был замешан в технической ноте Apple TN2206 - «Не используйте флаг -resource-rules или ResourceRules.plist. Они устарели и будут отклонены». Я вернул обратно Maverick и Xcode 6.0.1, когда у меня будет новая среда, я попробую решение, которое вы упомянули. – zskalnik
Что делать, если у вас нет проекта Xcode?Что это делает Xcode для запуска, когда он вызывает инструмент codeign? – Trejkaz
Как указано в another answer, вы также можете просто не указывать сертификат распространения для подписи, и он будет правильно упаковываться.
Ответ, предоставленный Юлиусом Лизаускасом, разрешит предупреждение, но на самом деле это всего лишь обходной путь для ошибки, которая существует в плагине Jenkins Xcode xcrun.
Как уже упоминалось в Apple Technical Note TN2206:
системы, прежде чем OS X Mavericks документировали подписи функции (--resource-правила), чтобы контролировать, какие файлы в пачке должны быть запечатаны посредством подписи кода. Эта функция была устарела для Mavericks. Подписи кодов, сделанные в Mavericks, а затем всегда запечатывают все файлы в комплекте ; нет необходимости указывать это явно. Этот также означает, что установка пути пути правил доступа к кодовой ссылке в Xcode больше не должна использоваться и должна быть оставлена пустой.
Таким образом, невозможно исключить части комплекта из подписи . Связки следует рассматривать как доступные только для чтения после того, как они были подписаны .
Существует ошибка issue raised on the Jenkins Xcode plugin относительно этой ошибки, которая завершает ошибку в Xcrun.
У меня тоже есть эта проблема. – doogilasovich