加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 无法在单元测试中使用Cocoapod

发布时间:2020-12-14 17:52:04 所属栏目:百科 来源:网络整理
导读:我在我正在建造的应用程序中使用一个名为temple8的内部 cocoapod.这是我的Podfile: platform :ios,'9.0'def temple8 pod 'j2objc-temple8-debug',:configuration = ['Debug'],:path = '../temple8/build/j2objcOutputs' pod 'j2objc-temple8-release',:conf
我在我正在建造的应用程序中使用一个名为temple8的内部 cocoapod.这是我的Podfile:

platform :ios,'9.0'

def temple8
    pod 'j2objc-temple8-debug',:configuration => ['Debug'],:path => '../temple8/build/j2objcOutputs'
    pod 'j2objc-temple8-release',:configuration => ['Release'],:path => '../temple8/build/j2objcOutputs'
end

target 'cartful-ios' do
  use_frameworks!

  temple8

  pod 'Stripe'
  pod 'Alamofire','~> 4.0'
  pod 'FontAwesomeKit',:git => 'https://github.com/PrideChung/FontAwesomeKit.git'
  pod 'KeychainAccess'
  pod 'pop','~> 1.0'
  pod 'libPhoneNumber-iOS','~> 0.8'
  pod 'AsyncDisplayKit',:git => 'https://github.com/facebook/AsyncDisplayKit.git'
  pod 'Intercom'
  pod 'Mixpanel-swift'
  pod 'UICountingLabel'
  pod 'DTFoundation'

  target 'cartful-iosTests' do
    inherit! :search_paths
    temple8
  end

  target 'cartful-iosUITests' do
    inherit! :search_paths
    temple8
  end

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

我需要在我的测试中引用temple8的部分,这就是我将它包含在两个测试目标中的原因.但是当我运行任何测试时,我会得到一长串错误,如下所示:

objc[83693]: Class PLBuildVersion is implemented in both
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices
(0x112334998) and
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices
(0x112156880). One of the two will be used. Which one is undefined.

我最初认为类的重复是由于在测试目标和应用程序目标中包含temple8引起的.但是,如果我从测试目标中删除temple8,任何时候我尝试使用@testable import …在我的测试中,我得到了一个

Failed to import bridging header...

构建错误.这意味着测试无法找到app的桥接头中的temple8头文件.所以我不确定这里最好的方法是什么.

解决方法

据我所知,警告并不是你所做的.我想我看到其他人有同样的问题,据我所知,这是Apple最新SDK的一个问题.我说你现在可以安全地忽略它.以下是一些人有同样的问题:

> Class PLBuildVersion is implemented in both frameworks
> Class PLBuildVersion is implemented in both/Applications

请查看此answer以获取更多信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读