Unable to find a specification in CocoaPods

跟風遠走 提交于 2019-11-27 05:12:17

问题


I cannot understand why the Cocoapod is unable to find the pod specification I created when I run pod install. Could someone help me solve this trouble?

I'm defining a subspec in my library podspec file like this:

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

This dependency ABC is listed in the library Podfile:

pod 'ABC', :git => 'git@github.com:myrepo/Podspecs.git', :branch => 'xyz'

The Podspec file ABC.podspec in the branch xyz of myrepo/Podspecs seems like this:

Pod::Spec.new do |s|
  s.name         = "ABC"
  s.version      = "1.0.0"
  s.source       = { :git => "git@github.com:myrepo/Podspecs.git", :branch => "xyz" }
end

The error is [!] Unable to find a specification for ABC (= 1.0.0)

Solution: import the pod ABC before importing the subspec and add the tag to the podspec.


回答1:


Instead of:

s.source       = { :git => "git@github.com:myrepo/Podspecs.git", :branch => "xyz" }

Write this: Don't forget the tag...

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



回答2:


I suppose that there is a problem with your pod master repo. Delete it and download it again.

You can do:

pod repo remove master
pod setup
pod install

Or:

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



回答3:


For me it was an issue with finding the spec, not the spec itself. I needed to add a source link to the Podfile, see Podfile documentation

Cocoapods recently added the need to link to the repo that holds the pod spec file you are looking for, the default is:

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

You may need to add multiple source links if you are using more obscure or homemade pods.




回答4:


With me, this worked like a charm.

pod repo remove master
pod setup

However, you may try directly, pod setup as some users pointed.




回答5:


I resolve this after add

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

to Podfile. well .I used a local repository as my Repo. So i can user this in another podspec file

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

iOS_Networking_CPN is in the local path.




回答6:


I was getting similar error for MGBoxkit

[!] Unable to find a specification for MGBoxkit

By replacing the following line

pod 'MGBoxkit'

with

pod 'MGBoxKit'

fixed the issue.




回答7:


Update the master repo for cocoapods.

`pod repo update master`



回答8:


Make sure you added

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

at the very beginning of your Podfile




回答9:


You first need to add your Podspec to a private specs repo; this lets CocoaPods find the pod when you try to install it.

Enter the following in Terminal, making sure you’re still in the framework directory you are trying to add:

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



回答10:


I missed adding , causing issue.

Replacing,

pod 'PodName' '~> 2.3'

With,

pod 'PodName', '~> 2.3'

Did the job.




回答11:


I solved my problem with below command:

cocoa pod update

To update use this command

sudo gem install cocoapods

if above command gives error than use this one

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

and than do this

pod repo update




回答12:


Follow the below steps :

Step 0: pod repo update master

Step 1: pod install

And you are done!




回答13:


had the same problem.

what really worked for me was gem uninstall cocoapods (as mentioned above by https://stackoverflow.com/users/4264880/seema-sharma) where I found that I had 11 (!) different cocoapods versions installed.

I chose to uninstall all and then gem install cocoapods:1.4.0

All good now.




回答14:


For me, the below worked well but first try could be direct "pod setup" command If that don't work then go for the below commands would definitely make things happen.

pod repo remove master
pod setup
pod install




回答15:


use tis instead. Using private pod and public pod in the same project

add the souce for both private and public(official) in the beginning of the podfile.



来源:https://stackoverflow.com/questions/25913733/unable-to-find-a-specification-in-cocoapods

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!