Подтвердить что ты не робот

Не удалось найти спецификацию в CocoaPods

Я не могу понять, почему Cocoapod не может найти спецификацию pod, которую я создал при запуске pod install. Может ли кто-нибудь помочь мне решить эту проблему?

Я определяю подпрограмму в моем файле podspec библиотеки следующим образом:

s.subspec 'mysubspec' do |c|
  c.dependency 'ABC','1.0.0'
end 

Эта зависимость ABC указана в подпикселе библиотеки:

pod 'ABC', :git => '[email protected]:myrepo/Podspecs.git', :branch => 'xyz'

Файл Podspec ABC.podspec в ветке xyz myrepo/Podspecs выглядит следующим образом:

Pod::Spec.new do |s|
  s.name         = "ABC"
  s.version      = "1.0.0"
  s.source       = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" }
end

Ошибка [!] Unable to find a specification for ABC (= 1.0.0)

Решение: импортировать блок ABC перед импортом подпрограммы и добавить тег в podspec.

4b9b3361

Ответ 1

Вместо:

s.source       = { :git => "[email protected]:myrepo/Podspecs.git", :branch => "xyz" }

Напишите это: Не забывайте тег...

s.source       = { :git => "https://github.com/myrepo/Podspecs.git", :branch => "xyz",
                   :tag => s.version.to_s }

Ответ 2

Я полагаю, что есть проблема с вашим репо. Удалите его и загрузите снова.

Ты можешь сделать:

pod repo remove master
pod setup
pod install

Или же:

sudo rm -fr ~/.cocoapods/repos/master
pod setup
pod install

Ответ 3

Для меня это была проблема с поиском спецификации, а не самой спецификации. Мне нужно было добавить исходную ссылку в подфайл, см. Документацию подфайла

Недавно Cocoapods добавили необходимость ссылки на репо, в котором хранится файл спецификации pod, который вы ищете, по умолчанию:

source 'https://github.com/CocoaPods/Specs.git'

Вам может потребоваться добавить несколько ссылок на источник, если вы используете более неясные или самодельные стручки.

Ответ 4

Со мной это работало как шарм.

pod repo remove master
pod setup

Однако вы можете попробовать прямо, pod setup, как указывали некоторые пользователи.

Ответ 5

Я разрешаю это после добавления

source '/Users/username/Documents/path/to/iOS_SpecsRepository'
source 'https://github.com/CocoaPods/Specs.git'

в подфайл. Хорошо. Я использовал локальный репозиторий в качестве своего репо. Поэтому я могу использовать это в другом файле podspec

s.dependency 'iOS_Networking_CPN', '~> 0.1.1'

iOS_Networking_CPN находится в локальном пути.

Ответ 6

Я получал аналогичную ошибку для MGBoxkit

[!] Невозможно найти спецификацию для MGBoxkit

Заменив следующую строку

pod 'MGBoxkit'

с

pod 'MGBoxkit'

исправлена ​​проблема.

Ответ 7

Обновите мастер репо для кокоподов.

'pod repo update master'

Ответ 8

Убедитесь, что вы добавили

source 'https://github.com/CocoaPods/Specs.git'

в самом начале вашего подфайла

Ответ 9

Сначала вам нужно добавить свой Podspec в репозиторий для приватных спецификаций; это позволяет CocoaPods найти модуль, когда вы пытаетесь установить его.

Введите в Терминале следующее, убедившись, что вы все еще находитесь в каталоге фреймворка, который вы пытаетесь добавить:

pod repo add [your framework name] [Your framework Git URL]
pod repo push [your framework name] [your framework .podspec file name]

Ответ 10

Я пропустил добавление , вызывая проблему.

Замена,

pod 'PodName' '~> 2.3'

С,

pod 'PodName', '~> 2.3'

Сделал работу.

Ответ 11

Я решил свою проблему с помощью следующей команды:

обновление cocoa-стручка

Для обновления используйте эту команду

sudo gem установить cocoapods

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

sudo gem install -n/usr/local/bin cocoapods

и чем это сделать

обновление репо

Ответ 12

Выполните следующие шаги:

Шаг 0: pod repo update master

Шаг 1: pod install

И вы сделали!

Ответ 13

была такая же проблема.

то, что действительно работало для меня, было gem uninstall cocoapods (как упомянуто выше https://stackoverflow.com/users/4264880/seema-sharma), где я обнаружил, что у меня было установлено 11 (!) различных версий cocoapods.

Я решил удалить все, а затем gem install cocoapods:1.4.0

Все хорошо сейчас.

Ответ 14

Для меня нижеследующее сработало хорошо, но первая попытка могла бы быть прямой командой "pod setup". Если это не сработало, тогда переход к приведенным ниже командам определенно приведет к успеху.

репо удалить мастер
настройка модуля
под установку

Ответ 16

В моем случае я решил свою проблему, обновив репозиторий:

pod repo update
pod install