gpt4 book ai didi

objective-c - 将 pod(图表)更新为最新的 Swift 语法

转载 作者:行者123 更新时间:2023-11-28 16:02:26 24 4
gpt4 key购买 nike

目前我正在使用 Charts pod 在我的 Objective-C 项目中,所以我今天不得不在 Xcode 8.1 中打开它,当然,我收到了这条消息:

warning

如果是我的代码,这不会有问题,但我们在这里讨论的是 pod。那么,处理此警告并为此 pod 切换到 Swift 3 语法的正确方法是什么?

我尝试过的:

我已经运行了 pod update 命令,并希望将它更新到最新版本...不过,当我打开 Xcode 时,我仍然收到相同的消息。这是我的 Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.2'
pod 'Charts', '~> 3.0'

use_frameworks!

target 'drivingCOACH' do
pod 'Charts', '~> 3.0'
end

最佳答案

图表 Pane 记录在 https://cocoapods.org/pods/Charts 上.当前版本(在提出问题时)正在使用 Swift 3.0。所以在使用它的时候,你所有的依赖也必须使用 Swift 3.0(你不能在使用框架时混合不同 Swift 版本的依赖,这是目前的强制要求)。

您可以手动更改build设置以指定每个 pod 目标都用于 Swift 3.0(通过将“使用旧版 Swift”值设置为 NO)。但是因为你的项目是在 Objective-C 中,所以你可能会在每次运行 pod install 时都执行此操作。

为避免该麻烦,您可以扩展 Podfile 的安装脚本以包含这些行,它将在您的下一个 pod deintegrate && pod install 上执行与上面完全相同的操作。 :

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

当您决定将一些 Swift 代码集成到您的应用程序时,将不再需要这些行,因为 CocoaPods 随后会将依赖项 Swift 版本与您正在使用的相匹配。

此外,如果遇到一些缓存问题,您可能需要在关闭 Xcode 时删除派生数据文件夹(默认情况下为 ~/Library/Developer/Xcode/DerivedData)。

关于objective-c - 将 pod(图表)更新为最新的 Swift 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40818904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com