当前位置: 首页 > 知识库问答 >
问题:

Xcode 8 Beta 3使用旧版Swift问题

许彭祖
2023-03-14

我在Xcode8Beta3中有一个Objective-C项目。自更新以来,每当我尝试构建时,都会收到以下错误:

对于使用Swift的目标,需要正确配置使用遗留Swift语言版本(SWIFT_VERSION)。使用[编辑转换到当前Swift语法…]菜单选择Swift版本,或使用生成设置编辑器直接配置生成设置。

有人遇到过这个吗?因为它是一个Objective-C项目,所以没有构建设置来配置Swift。我还确保没有一个项目依赖项或CocoaPods使用Swift。我唯一的解决方案就是使用Beta2。你知道我该怎么解决这个问题吗?

我还应该提到我正在运行OSX10.12Beta2。

共有3个答案

商嘉木
2023-03-14

我已经忽略了这个问题有一段时间了,只是在此期间致力于其他的事情--我终于找到了解决问题的方法。

因为我的项目是客观的,我想也许我正在使用的一个Pod正在使用Swift,我检查了每个Pod,没有一个是这样的。

最终的解决方案是,我的核心数据模型被设置为在Swift中生成代码,即使我一直在文件&>中手动生成它们;新建(&>;NSManagedObjectSubclass菜单。我要做的就是把它切换到objective-c。

梁丘威
2023-03-14

我只是找到了一个修复的方法。

转到项目或库的生成设置,将Swift编译器版本属性“使用遗留Swift语言版本”从未指定设置为是或否。

焦信鸥
2023-03-14

如果您正在使用CocoaPods,并且希望它在每次执行 时自动修复,那么您可以在您的podfile末尾添加以下行:

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

编辑:如果您使用CocoaPods V1.1.1或更高版本,此问题现在已被修复。不要忘记从您的主要项目目标中删除 设置。

 类似资料:
  • 我在Xcode8Beta3中有一个Objective-C项目。自更新以来,每当我尝试构建时,都会收到以下错误: 对于使用Swift的目标,需要正确配置使用遗留Swift语言版本(SWIFT_VERSION)。使用[编辑转换到当前Swift语法…]菜单选择Swift版本,或使用生成设置编辑器直接配置生成设置。 有人遇到过这个吗?因为它是一个Objective-C项目,所以没有构建设置来配置Swift

  • 当我执行phpInfo时。我的Linux(fedora)上的php脚本 它给出了PHP版本5.5 而当我使用我的Apache服务器(通过浏览器)到达它时,它给了我旧的PHP 5.3版本。 发现Apache正在使用一些库(LoadMoulesphp5_module模块/libphp5.so)-在php.conf.中找到它 有人能帮助如何更改Apache正在使用的版本吗? 或者还有其他方法迫使Apac

  • 问题内容: Cloundfoundry最近将其Java buildpack更新到2.5版(包括Java 8和tomcat 8)。我仍想使用2.4版,因为我的应用尚未升级到Java 8。这样做最简单的方法是什么? 我可以使用 但是如何指定使用版本2.4(https://github.com/cloudfoundry/java- buildpack/releases/tag/v2.4 )?显然,指定标

  • 问题内容: 如果我没记错的话,Android准则说您应该将ActionBar用于应用程序内的全局导航。 但是同时,您通常希望定位最古老的API,以实现最大的兼容性。 我正在开始开发应用程序,并将目标设置为Android 2.2。 是否可以在此处使用操作栏?如果没有,我该怎么用? 谢谢凯文 问题答案: 使用ActionBarSherlock。 确保您的项目使用Android 4.0+作为构建目标,并

  • 问题内容: 我目前在中将传统设置为to ,但是我正在使用的某些库是Swift 3.0,这意味着我需要为每个pod 上的所有pod 手动设置传统。如何在安装程序中配置每个Pod版本? 这是我正在设置的: 如果设置为,则豆荚有问题。最好的解决方案是,如果我们分别设置每个Pod旧版本,以避免必须手动设置它。 问题答案: 我在搜索如何将Xcode 9的SWIFT_VERSION设置为3.2时发现了这一点。

  • 问题内容: 我删除了托管工作的旧詹金斯版本: 这些旧版本仍在作业页面中可见。如何使用命令行删除它们? (在每个构建用户界面中没有删除按钮) 问题答案: 似乎已将其添加到CLI中,或者至少正在使用它:http : //jenkins.361315.n4.nabble.com/How-to- purge-old-builds-td385290.html 语法如下所示: