swift2 对于使用Swift的目标,需要正确配置“Swift语言版本”(SWIFT_VERSION)

omhiaaxx  于 2022-11-06  发布在  Swift
关注(0)|答案(8)|浏览(201)

我刚刚更新了最后一个Xcode(8.3),我看到了以下消息:

使用Swift的目标需要正确配置“Swift语言版本”(SWIFT_VERSION)。使用[编辑〉转换〉到当前Swift语法...]菜单选择Swift版本或使用构建设置编辑器直接配置构建设置。

知道“Use Legacy Swift Language Version”选项刚刚从构建设置中删除,我如何在Swift 2.3中生成我的应用程序而不进行任何转换呢?

g0czyy6m

g0czyy6m1#

在导航器选择栏中,点按放大镜,然后搜索“SWIFT_VERSION“,您将找到项目中可以相应调整swift版本的位置。

zphenhs4

zphenhs42#

你不能。XCode 8.2是支持Swift 2.3的最后一个版本。你必须更新到Swift 3或使用Xcode 8.2。

kpbwa7wx

kpbwa7wx3#

在我的例子中,我选择了Pod,并为特定的Pod更改了swift版本。这对我很有效。

gywdnpxw

gywdnpxw4#

要以编程方式更改swift版本的pod,您可以将其添加到您的Podfile中

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if ['Alamofire','OtherPod','AnotherPod'].include? target.name
            target.build_configurations.each do |config|
                config.build_settings['SWIFT_VERSION'] = '4.0'
            end
        end
    end
end

在Swift 4中,如果您也使用了objective-c,
您可以打开@objc推理,以便swift项目可以在objective-c上正确运行。

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if ['Alamofire','OtherPod','AnotherPod'].include? target.name
            target.build_configurations.each do |config|
                config.build_settings['SWIFT_SWIFT3_OBJC_INFERENCE'] = 'On'
            end
        end
    end
end
hsgswve4

hsgswve45#

您不能,因为XCode 8.2是支持Swift 2.3的最后一个版本。您必须将您的代码更新到Swift 3或使用Xcode 8.2。

yzuktlbb

yzuktlbb6#

该死的Xcode,现在我必须迁移到Swift 3.0。它在使用Swift 2.3打开或构建旧项目时清楚地显示了此警报,所以我建议让我们迁移:(:(

w8biq8rn

w8biq8rn7#

将Swift语言版本更改为构建设置中支持的版本

6g8kf2rb

6g8kf2rb8#

已更新,对我有效:

**第一步:**进入你的ios文件夹,打开podfile,做以下简单的更改;

  • 第一次更改:*
target 'Runner' do
      use_frameworks! # <--- add this single line
      # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
      # referring to absolute paths on developers' machines.
      system('rm -rf .symlinks')
      system('mkdir -p .symlinks/plugins')
  • 第二次修改:*
post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
      config.build_settings['SWIFT_VERSION'] = '3.2' # <--- add this single line
    end
  end
end

**第2步:**从Xcode打开您当前的工作项目,即转到ios文件夹并打开您的ProjectName.xcworkspace文件;

Add an empty Swift file to your Flutter iOS project in Xcode and accept to add bridging header.

**步骤3:**打开终端并使用以下命令再次安装;

pod install

如果项目已经打开,请关闭它,然后再次打开,即您ProjectName.xcworkspace文件,进行清理和构建

相关问题