1

我正在尝试将现有项目转换为 cocoapod,以便在运行时更容易使用

pod spec lint --verbose

我收到了许多类似的错误

- ERROR | [iOS] xcodebuild: CoreDataServices/CoreDataServices/Services/Count/CDSCountService.m:28:9: error: use of undeclared identifier 'NSFetchRequest'

我有以下作为我的 podspec:

 Pod::Spec.new do |s|

  s.name         = "CoreDataServices"
  s.version      = "0.2.0"
  s.summary      = "CoreDataServices contains a set of helper classes to abstract away common core data functionality."

  s.homepage     = "http://www.williamboles.me"
  s.license      = { :type => 'MIT', 
                     :file => 'LICENSE.md' }
  s.author       = "William Boles"

  s.platform     = :ios, "8.0"

  s.source       = { :git => "https://github.com/wibosco/CoreDataServices.git", 
                     :branch => "master", 
                     :tag => s.version }

  s.source_files  = "CoreDataServices/**/*.{h,m}"
  s.public_header_files = "CoreDataServices/**/*.{h}"

  s.frameworks = 'UIKit', 'CoreData'

  s.requires_arc = true

end

我安装了 cocoapod 版本 0.39.0。

使用xcodebuildcocoapods 外部构建项目会导致项目构建时没有错误。

4

1 回答 1

1

我最终设法到达那里,但这是一个奇怪的:

Pod::Spec.new do |s|

  s.name         = "CoreDataServices"
  s.version      = "0.2.0"
  s.summary      = "CoreDataServices contains a set of helper classes to abstract away common core data functionality."

  s.homepage     = "http://www.williamboles.me"
  s.license      = { :type => 'MIT', 
                     :file => 'LICENSE.md' }
  s.author       = "William Boles"

  s.platform     = :ios, "8.0"

  s.source       = { :git => "https://github.com/wibosco/CoreDataServices.git", 
                     :branch => "master", 
                     :tag => s.version }

  s.source_files  = "CoreDataServices/**/*.{h,m}"
  s.public_header_files = "CoreDataServices/**/*.{h}"

  s.requires_arc = true

  s.frameworks = 'UIKit', 'CoreData'

end

我移到s.requires_arc = true上面s.framework = 'UIKit', 'CoreData',错误消失了。

我还注意到,如果我颠倒框架的顺序,使其变为

s.frameworks = 'CoreData', 'UIKit'

s.requires_arc = true 

这也有效

于 2016-01-08T12:18:22.817 回答