Cocoapods - 无法找到[Github框架]的规范

时间:2015-03-03 23:26:24

标签: ios xcode unix cocoapods

尝试pod install新的Podfile到现有的Xcode(iOS)项目时,我从终端获得以下错误消息:[!] Unable to find a specification for 'XCDYouTubeKit (~> 2.1.1)'。我尝试加载的Podfile如下所示:

# Uncomment this line to define a global platform for your project
# platform :ios, '6.0'

target 'DemoApp' do

pod 'XCDYouTubeKit', '~> 2.1.1'

end

target 'DemoAppTests' do

end

target 'TheDayByDay' do

end

此外,我的Xcode项目的文件结构如下:

DemoApp
     Podfile (file)
     Pods (directory)
     DemoApp (directory)
     DemoApp.xcodeproj (file)
     DemoAppTests (directory)

这个安装不起作用?我哪里错了?我正在运行Cocoapods 0.35.0。我错过了pod spec文件吗?我不明白它是什么或这种文件的文件结构是什么样的。

4 个答案:

答案 0 :(得分:33)

在评论中引用您的对话,您将要执行sudo rm -fr ~/.cocoapods/repos/master,因为它会删除您计算机中存在的所有虚假和损坏的回购,以便有机会重新填充你重做pod setup,用新的Cocoapods设置恢复你。此外,您还要指定新版Xcode所在的sudo xcode-select --switch /applications/Xcode.app。这只是我必须做的另一个设置过程来完成修复。从那里开始,只需执行pod setup,然后设置为pod install以集成您想要的所有库!

答案 1 :(得分:5)

你也可以通过这样设置强制它:

  

pod'yourpodframework',:git => 'https://github.com/username/yourpodframework'

答案 2 :(得分:4)

我遇到了同样的问题。 但我必须通过以下程序解决我的问题。

   source 'https://github.com/CocoaPods/Specs.git'
    platform :ios, '9.0'

    target 'Test' do

      use_frameworks!

#    pod 'Alamofire', '~> 4.0'
     pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git'

#    pod 'SwiftyJSON' , '~> 3.1'
     pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git'

#     pod 'SideMenu' '~> 2.0'
      pod 'SideMenu', :git => 'https://github.com/jonkykong/SideMenu.git'

#     pod 'SDWebImage', '4.0.0-beta2'
      pod 'SDWebImage', :git => 'https://github.com/rs/SDWebImage.git'

#     pod 'SwiftDate', '~> 4.0'
      pod 'SwiftDate', :git => 'https://github.com/malcommac/SwiftDate'



end

post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['SWIFT_VERSION'] = '3.0'
     end
    end
  end

Links for more information

答案 3 :(得分:1)

我会把它放在这里供将来参考: 在我的情况下,问题是一个错误的podspec,其语法问题已被推送到远程。 Podfile包含对特定github提交的引用。 显然在这种情况下,CocoaPods提供了关于“缺少podspec”的非常无益的错误消息,尽管podspec肯定存在,只是拙劣。

解决方案:下载podspec文件(例如,通过克隆整个pod的repo)并运行viewDidDisappear

或者:在本地克隆pod并将Podfile引用更改为本地路径。在这种情况下执行pod spec lint将显示更有用的错误消息。像这样:

pod install

正如您所看到的,在我的案例中,这是[!] Invalid `<some>.podspec` file: syntax error, unexpected tCONSTANT, expecting keyword_end ...eGraphics', 'QuartzCore, 'IOKit', 'XCTest'

后的缺失引用