【问题标题】:Unable to add cocoapod dependancy in Custom framework - Swift无法在自定义框架中添加 cocoapod 依赖项 - Swift
【发布时间】:2018-12-05 02:06:59
【问题描述】:

报告

你做了什么?

我已经为我的自定义框架创建了 podspec 文件:

Pod::Spec.new do |s|
  s.platform = :ios
  s.ios.deployment_target = '10.0'
  s.name = "CustomFramework"
  s.summary = "CustomFramework have all the wrapper API."
  s.requires_arc = true
  s.version = "1.0.0"
  s.license = { :type => "MIT", :file => "LICENSE" }
  s.author = { "My Name" => "my.name@xyz.com" }
  s.homepage = "URL_LINK"
  s.source = { :git => "github_url_link", :tag => "#{s.version}"}

      s.dependency 'RealmSwift', '3.5.0'
      s.dependency 'Firebase/Core', '5.1.0'
      s.dependency 'Firebase/Firestore', '5.1.0'
      s.dependency 'PubNub','4.7.5'

  s.source_files = "CustomFramework/**/*.{swift}"
end

我在示例项目中将此自定义框架 pod 添加为:

target 'customFrameworkSample' do
  use_frameworks!
  pod 'customFramework' , :path => 'Local_Path_for_customFramework.podspec'

  target 'customFrameworkSampleTests' do
    use_frameworks!
      pod 'customFramework' , :path => 'Local_Path_for_customFramework.podspec'
  end
end

您预计会发生什么?

Pod 应该正确安装,并且当示例项目构建时,它应该运行并且不会抛出任何错误。

发生了什么?

在示例项目中,在 CustomFramework 文件中导入 firbase、RealmSwift 文件等时会引发错误。

CocoaPods 环境

可可足:1.5.3

【问题讨论】:

  • Xcode 解析器在第一次构建之后才看到模块。

标签: ios swift frameworks dependencies cocoapods


【解决方案1】:

当您在 Podspec 中指定依赖项时,您是在说 您的自定义框架 依赖于它们。因此,依赖项只能在您的框架内引用。如果您希望示例应用程序能够引用 Firebase,那么您需要在示例应用程序的 podfile 中指定它。

文档参考:

Podspec 'dependancies'

Podfile 'dependancies'

【讨论】:

  • 是的,没错。我的自定义框架依赖于这些第三方框架。但是,当我使用 pod 将自定义框架包含在示例项目中时,它将成功安装所有 pod。但是当我编译这个项目时,它在自定义框架的文件之一中给出了上述错误。
【解决方案2】:

确保您已在链接框架和库中添加了 firebase 库

【讨论】:

  • 嗨@Ryan110,我没有手动添加框架。我正在为此使用吊舱。当我安装 pod 时,它是在示例应用程序的链接框架和库中生成 Pod.framework。
  • 只是测试一下。我曾经遇到过这个问题,用这种方式解决了。
猜你喜欢
  • 2015-01-22
  • 2018-04-24
  • 1970-01-01
  • 2018-07-17
  • 2013-04-13
  • 1970-01-01
  • 2015-05-09
  • 2019-01-08
  • 2013-01-06
相关资源
最近更新 更多