• 转发链接:... The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This...

    转发链接:https://blog.csdn.net/nathan1987_/article/details/79757368

     

    The “Swift Language Version” (SWIFT_VERSION) build setting 
    must be set to a supported value for targets which use Swift.
    
    This setting can be set in the build settings editor.
    

      

     

     

    转载于:https://www.cnblogs.com/qingzZ/p/9802162.html

    展开全文
  • 之前的代码Swift版本是3.2(假设),而最新的Widget则使用4.0为什么不把3.2的代码升级到4.0呢?这是可以的,但是涉及到要改很多地方:而且3.2和4.0也不是完全不兼容,只是在某些地方新旧版本会有冲突,没必要为了这

    你会问同一个Xcode项目中还会用不同版本的Swift?

    对!举个栗子:2年前你写了一个管理密码的App,最近你觉得有必要再写一个Today Widget插件用来便捷显示密码。

    之前的代码Swift版本是3.2(假设),而最新的Widget则使用4.0

    为什么不把3.2的代码升级到4.0呢?这是可以的,但是涉及到要改很多地方:

    升级带来许多问题


    而且3.2和4.0也不是完全不兼容,只是在某些地方新旧版本会有冲突,没必要为了这一点兼容性而老项目全部升级版本。

    比如说对于NSMutableAttributedString的操作,4.0之后对于属性名称的引用方式和之前有不同,无法写出3.2和4.0都能编译通过的代码。

    对于3.2和4.0都会引用到的代码片段,我们必须因”版”而异,用Swift的编译宏命令做代码隔离:

    #if swift(>=4.0)
                attrString.addAttribute(.foregroundColor, value: UIColor.red, range: range)
                attrString.addAttribute(.backgroundColor, value: UIColor.green, range: range)
                attrString.addAttributes([.shadow:keywordShadow,.verticalGlyphForm:0], range: range)
            #else
                attrString.addAttribute(NSForegroundColorAttributeName, value: UIColor.red, range: range)
                attrString.addAttribute(NSBackgroundColorAttributeName, value: UIColor.green, range: range)
            attrString.addAttributes([NSShadowAttributeName:keywordShadow,NSVerticalGlyphFormAttributeName:0], range: range)
            #endif

    以上代码在项目的公共组里的String+ext.swift文件中,该文件会同时被App和Widget项目包含使用。

    使用如上所示的代码隔离,或称为选择编译使得全部项目顺利编译通过。

    展开全文
  • 我们知道Xcode中可能包含不知一个Swift版本,那么我们如何找到它们对应的路径呢?熟悉unix shell命令的童鞋都知道有一个find指令,在我们已知Xcode路径时,我们可以在其中找到Swift在哪里:find /Applications/Xcode....

    我们知道Xcode中可能包含不知一个Swift的版本,那么我们如何找到它们对应的路径呢?

    熟悉unix shell命令的童鞋都知道有一个find指令,在我们已知Xcode路径时,我们可以在其中找到Swift在哪里:

    find /Applications/Xcode.app -name swift -a -type f

    以上命令中的-a选项表示的是and逻辑,你也可以写全称为-and.所以你必须同时符合name为swift,同时type为一般文件这两个条件才可以哦.

    其他type的参数有:

    -type t
                 True if the file is of the specified type.  Possible file types are as follows:
    
                 b       block special
                 c       character special
                 d       directory
                 f       regular file
                 l       symbolic link
                 p       FIFO
                 s       socket

    在本猫的air上运行以上指令结果如下:

    /Applications/Xcode-beta.app/Contents/Developer/Toolchains/Swift_2.3.xctoolchain/usr/bin/swift
    /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift

    第一个swift版本显然是2.3,我们看一下后面Swift的版本:

    /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -version
    Apple Swift version 3.0 (swiftlang-800.0.34.6 clang-800.0.33)
    Target: x86_64-apple-macosx10.9

    不出意外是Swift 3.0哦,我的Xcode是8.0beta4

    展开全文
  • 打开终端,使用命令xcrun swift -versionxcodebuild -showsdks如图所示: 转载于:https://juejin.im/post/5cde5a62f265da1bc55230e5

    打开终端,使用命令

    xcrun swift -version

    xcodebuild -showsdks 

    如图所示:




    转载于:https://juejin.im/post/5cde5a62f265da1bc55230e5

    展开全文
  • 更新Xcode8之后之前用Swift2.3写的程序运行不起来。 原因:Xcode 8 兼容Swift 2.3 和 3.0 两种版本,默认为3.0 解决方法:Target - Build Settings 选择Yes即可。

    更新Xcode8之后之前用Swift2.3写的程序运行不起来。

    原因:Xcode 8 兼容Swift 2.3 和 3.0 两种版本,默认为3.0

    解决方法:Target -  Build Settings

    选择Yes即可。

    展开全文
  • 打开终端,使用命令: xcrun swift -version xcodebuild -showsdks
  • Xcode8中使用Swift2.3

    2016-10-13 19:05:29
    Xcode8支持两个Swift版本:2.3和3.0 。 用Xcode8打开Swift2.3的项目时,会弹窗提示你是否需要自动转换代码至Swift3.0 。 自动转换代码后,仍会有不少报错。 那么怎样让Swift2.3的项目在Xcode8上快速Run起来呢? ...
  • Xcode 8 下使用 Swift2.3

    2016-10-07 06:38:12
    Xcode8 使用 Swift2.3 Swift3 回退
  • To Current Swift Syntax… 让Xcode帮我们把Swift4.0的代码转换为Swift4.2(升级Xcode后第一次编译,Xcode会自动提醒你升级swift版本,点那个也行),选择转换的时候不要选择pod的第三方框架,pod的...
  • 在 Building Settings中搜索 swift 将No 换成Yes 如下图:
  • Xcode 11.4 正式版终于发布了,新版本带来了很多的提升,同时也是引入了一些新的bug。为了方便大家解决问题,我计划将语法方面的问题汇总到一篇文章中,方便大家查阅。 新属性 类型检查现在更加精确。在许多情况下...
  • 我今天用Mac升级了XCode到8.1,Swift版本应该到了swift3,按网上的demo写webview的例子,报一堆错,整了一天才搞定,不想其他人踩坑了! XCode8.1 ,swift3,WebView的正确打开方式是这样的: 创建应用 打开XCode,...
  • Xcode 9 引入了 New Build System,可在 Xcode 9 的 File -> Project Settings... 中选择开启。 预编译 Bridging Headers 文件 对于 Swift 和 Objective-C 混合的项目,Swift 调用 Objective-C 时,需要建立一...
  • Xcode 生成swift framework 动态库,用lipo create命令合并了phone和simulator后(只合并了framework里面的“可执行文件”),导入到测试项目中,发现真机下可以编译运行,但模拟器无法编译,错误为:Error:Use of ...
  • 要在Xcode 8中完全使用Swift 3.0,个人感觉不现实,因为有些重要的开源框架无法同时支持Swift 3.0和iOS 8.0,比如最常用的Alamofire,4.0版本才支持Swift 3.0,但却要求iOS 9.0+。目前的做法是把Xcode 8 bulid ...
  • 切换Xcode的默认版本

    2018-10-19 10:21:22
    电脑上分别安装了Xcode-Beta7.1和Xcode10.0,所以有时候需要切换Xcode版本。 切换xcode路径的方法为:sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer(xcode路径) 查看切换后的xcode...
  • 1、打开xocde,创建一个工程,如下图所示:2、选择macOs中的Command Line Tool项目,然后点击next,如...5、创建之后已经存在一个main.swift文件,如下图所示:6、点击右三角运行,如下图所示:7、运行成功之后就会...
  • 1. 退出 Xcode 2. 重启电脑 3. 找到 这个 DerivedData 文件夹 删除 (路径: ~/Library/Developer/Xcode/DerivedData) 4. 删除这个 com.apple.dt.Xcode 文件 (路径: ~/Library/Caches/com.apple.dt.Xcode) 5. 运行...
1 2 3 4 5 ... 20
收藏数 23,402
精华内容 9,360
关键字:

xcode选择swift版本