xcode - 如何为此项目结构配置 cocoapod podspec 和 podfile?

标签 xcode cocoa-touch cocoapods

嗨,我的项目文件夹结构如下:

+ Podfile
+ Apps/
  |
  +  Apps.xcodeproj
  | 
  +  Target1/
  | 
  +  Target2/

+ AppLib/
  |
  + AppLib.podspec
  |
  + AppLib.xcodeproj
  |
  + TargetLib1/
  | 
  + TargetLib2/

我的依赖结构是这样的
Apps -- 依赖 --> AppLibAppLib -- 依赖 --> RestKitMagicalRecord
这是我如何配置我的播客文件
workspace 'MyApp'
xcodeproj 'Apps/Apps'
xcodeproj 'AppLib/AppLib'


def import_pods
  pod 'AppLib', :path => './AppLib'
end

target 'Target1' do
  platform :ios, '7.0'
  import_pods
  xcodeproj 'Apps/Apps'
end

target 'Target1' do
  platform :ios, '7.0'
  import_pods
  xcodeproj 'Apps/Apps'
end

这是AppLib.podspec :
Pod::Spec.new do |s|

  s.name         = "AppLib"
  s.version      = "0.0.1"
  s.summary      = "Common library."
  s.platform     = :ios, "7.0"
  s.source_files  = "Lib/Public/**/*.{h,m}"
  s.ios.deployment_target = '7.0'
  s.resources = "Lib/Nibs/**/*.xib"
  s.requires_arc = true
  s.dependency 'RestKit', '~> 0.23'
  s.dependency 'MagicalRecord'
end

在根文件夹(文件夹包含 Podfile)pod install运行没有问题
但是当我导入 RestKit #import "RestKit.h"#import <RestKit/RestKit.h>在我的 AppLibs 项目中,xcode 说找不到该文件。

我的 podfile 和 podspec 是否正确?
为什么 xcode 声称未找到 RestKit.h?

如果我想单独构建 AppLibs,如何拉取所有依赖项?
(pod install 不适用于 .podspec 文件)我需要在 AppLib 中创建另一个 podfile文件夹?

最佳答案

好吧,我的目标是

  • 让 lib 单独构建和发布
  • 使用 CocoaPods 管理应用程序和库的依赖关系
  • 尽量避免重复
  • 从一个工作区使用 lib 和 app 轻松调试

  • 我结束的是
  • lib 和应用程序的单独 git 存储库
  • 每个 repo 都有自己的 podfile
  • Lib 的 repo 是应用程序的一个 git 子模块
  • Lib 的项目包含在应用的工作区
  • 应用程序以老式方式将库与
    'LIBRARY_SEARCH_PATH'、'USER_HEADERS_SEARCH_PATH'。为了不让
    CocoaPods 破坏了我的 lib 文件夹结构(如果您将 lib 作为 dev pod 附加,它会这样做)。
  • Lib 有一个 podspec 列出依赖项,lib 的 podfile 只是抓取
    从那里使用 'podspec' 命令
  • 应用程序的 podfile 也是如此(podspec 'lib/Lib.podspec'),因此
    指的是lib的所有依赖项。

  • 就是这样,希望对你有帮助。

    关于xcode - 如何为此项目结构配置 cocoapod podspec 和 podfile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24176598/

    相关文章:

    xcode - 如何将值从 NSTabViewController 传递到 subview ?

    iphone - 关于Cocoa Touch Controls可扩展性的问题

    iphone - 为什么我的 UILabel 没有居中?

    swift - 使用 UITableViewRowAction 执行 segue 控制

    ios - 使用 Swift 和 Objective-C 构建 Cocoapod : How to Deal with Umbrella Header Issues?

    xcode - 文档 “filename.dae”无法保存

    ios - UIImageView内存泄漏

    ios - 未找到自动链接框架

    ios - Xcode 12 : Compiling for iOS 10. 0,但模块 'RxSwift' 的最低部署目标为 iOS 12.0

    ios - 在 iOS 14 升级中未加载 react-native 图像