在我的项目的基础上执行pod安装后,我得到以下错误:

CocoaPods没有设置项目的基本配置,因为您的项目已经有一个自定义配置集。为了实现CocoaPods集成,请将目标BluePlaquesLondonFramework的基本配置设置为Pods/ target Support Files/Pods/Pods.debug.xcconfig,或者在构建配置中包含Pods/ target Support Files/Pods/Pods.debug.xcconfig。

这可能听起来像是一个愚蠢的问题,但是我如何为目标设置基本配置呢?

https://github.com/seanoshea/BluePlaquesLondon/blob/ios8/Podfile是导致此问题的Podfile。

如果你想知道这个项目是什么样子的话,iOS 8分支上的http://github.com/seanoshea/BluePlaquesLondon就是这个问题中的Podfile。


当前回答

我把pod文件里的pod从目标移到了外面。文件更改如下:

# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!

target 'MyProject' do

pod 'Firebase', '>= 2.5.0'
pod 'Onboard'
pod 'GoogleMaps'
pod 'IQDropDownTextField'

end

:

# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!

pod 'Firebase', '>= 2.5.0'
pod 'Onboard'
pod 'GoogleMaps'
pod 'IQDropDownTextField'

target 'MyProject' do

end

其他回答

最简单的解决方案(在多次遇到这个问题后):

删除Podfile & Podfile。锁从你的项目库(保存Podfile的地方,这样你可以很容易地粘贴到新的Podfile) 运行'pod init' 编辑“Podfile”到你的遗嘱(添加你正在使用的pods) 运行'pod install'

这将在几分钟内重新创建所有内容并工作(不花费时间对“错误”进行逆向工程)。

播客文件中产生问题的行是:link_with ['BluePlaquesLondon', 'BluePlaquesLondonFramework']。

只是让这个:link_with ['BluePlaquesLondon']或这个(在我的情况下工作,希望它会在你的:-)):

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

xcodeproj 'BluePlaquesLondon.xcodeproj'
inhibit_all_warnings!
link_with ['BluePlaquesLondon']

def import_pods

     pod 'TTTAttributedLabel', '~> 1.10.1'
     pod 'GoogleAnalytics-iOS-SDK', '~> 3.0.9'
     pod 'Google-Maps-iOS-SDK'
     pod 'IntentKit'
     pod 'HCViews'
     pod 'SVProgressHUD', :head
     pod 'iRate'
     pod 'iOS-KML-Framework', :git => 'https://github.com/FLCLjp/iOS-KML-Framework.git'

end

import_pods

target "BluePlaquesLondonFramework" do
    import_pods
    pod 'Kiwi'
end

如果您正在使用自定义配置,您可以按照警告中的建议,将Pod配置包含在配置文件中

     #include "Pods/Target Support Files/Pods-YYY/Pods-YYYY.develop-archive.xcconfig"

这将不会停止警告,但将允许您使用您的私人配置(在CocoaPods项目的警告上有一个开放的错误) https://github.com/CocoaPods/CocoaPods/issues/2633

对于那些来自Flutter世界的人来说,这是一条误导性的错误消息,建议执行不必要的操作,正确的做法是忽略错误并使用Flutter cli(而不是pod),如https://github.com/flutter/flutter/issues/73845:中所述

Gatzsche说,更好的信息应该是:

在颤振吊舱安装不应手动调用。运行pod install 执行以下命令颤振清除,颤振pub get和 颤振构建ios。

杰马格曼指出:

正如您所指出的,错误消息建议执行不必要的操作。颤振命令抑制来自吊舱的消息。您直接运行pod,这不是一个推荐的工作流。我们无法控制来自CocoaPods的错误消息,并且flutter命令行工具已经抑制了令人困惑的消息。

你还应该确保在Podfile的根目录中没有pod,你应该像这样定义在许多目标中使用的所有pod:

def shared_pods
  pod 'ReactiveCocoa', '~> 2.5'
end
target 'app' do
  shared_pods
  pod 'RestKit'
end
target 'tests' do
  shared_pods
  pod 'OCMock'
end

您还可能需要删除libPods。libPods-app. a和libPods-app。A从目标依赖项,执行一个清洁,然后运行pod安装再次。