我最近将Xcode
更新为10。默认情况下,启用了“新建系统”。在构建项目时,我注意到我的更改在Simulator上不起作用。当我尝试调试此代码时,Xcode显示正确的更改后的源代码,但是执行的代码是旧的。
当我改回“旧版”构建系统时,一切正常。
有类似经验的人吗?
谢谢
这可能是Cocoapods的问题。因为我确实解锁了podfile,并尝试编辑一些代码。
答案 0 :(得分:0)
您需要执行一些额外的步骤才能最终使其成功编译。 (甚至在Xcode 9上也需要这些额外的步骤。)
Xcode:文件->工作区设置->构建系统:旧版构建系统
Xcode:产品->清洁
旋转可通过不同的仿真器类型进行编译,例如“ iPhone 8”,“ iPhone 8 Plus”等(它们可能会失败也可能不会。)
遵循此步骤,希望您在执行此步骤后能够解决问题
答案 1 :(得分:0)
在Xcode 10中,新的构建系统被默认设置。更新Xcode 10后,您将面临项目的问题。Apple意识到了这些问题,他们在Xcode 10发行说明中提到了这一点。
已知问题:- 增量构建可能无法为 与项目无关的与源无关的更改,例如资源文件 修改,可能会导致应用无法启动。 (41254808)
解决方法:更改同一目标中的源文件以触发 代码签名过程,或执行干净的构建。
安装Swift工具链后,Xcode不会立即检测到 工具链。 (31360319)
解决方法::关闭并重新打开工作区。
新的构建系统不支持按需资源(ODR)。如果 您的项目使用ODR,可以在以下版本中重新启用旧版构建系统 文件>工作区/项目设置。 (31508570)
在继承的xcconfig文件中定义了构建设置时 值使用$(继承)或$(),构建设置 编辑器显示该设置的最后分配值,而不是 正确构成的价值。 (28572636)
具有多个不同资产目录的目标 构建阶段可能会产生有关“复制输出文件”的错误。 (39810274)
解决方法:确保所有资产目录均由同一资产处理 在目标中建立阶段。
新的“使用计时汇总”命令没有显示计时 在构建过程中,某些任务会在构建系统中运行。 (39801746)
自定义构建系统插件(包括Intel ICC编译器)不是 尚未支持。 (32795438,33286594)
解决方法::如果需要,请切换到使用以下版本的旧版构建系统: 文件>项目/工作区设置页。
具有复制头的目标构建在编译源之后排序的阶段 构建阶段可能无法构建并发出有关构建的诊断信息 周期。 (39880168)
解决方法::在编译之前安排所有复制头构建阶段 源构建阶段。
在使用自定义项目的项目上执行xcodebuild clean时 构建位置在派生数据目录之外,并且位置较旧 构建Xcode 10之前生产的产品,Xcode可能报告错误 表示它不会删除不是由新创建的目录 构建系统。 (40427159)
解决方法::手动删除构建文件夹。