【发布时间】:2017-01-25 10:36:36
【问题描述】:
我在运行状态下复制了我的项目,但复制的项目对我不起作用,尽管实际项目运行良好。当我构建我复制的项目时,它给了我以下错误:
我已清除缓存和派生数据,但构建仍然失败。
有谁知道可能导致此问题的原因?提前致谢。
【问题讨论】:
我在运行状态下复制了我的项目,但复制的项目对我不起作用,尽管实际项目运行良好。当我构建我复制的项目时,它给了我以下错误:
我已清除缓存和派生数据,但构建仍然失败。
有谁知道可能导致此问题的原因?提前致谢。
【问题讨论】:
如果您正在使用 SPM,删除 .build 文件夹并重新运行 swift build 可以解决我的问题。
【讨论】:
如果重命名项目目录,可能会出现此错误。
供大家参考,我用的是Flutter,所以
flutter clean
已经解决了。
【讨论】:
如果您使用的是CocoaPods,请打开yourProject.workspace 而不是yourProject.xcodeproj。
【讨论】:
xed . 来快速完成。
我遇到了同样的错误,但原因是因为将不同的 iOS 版本指定为 Podfile 的 platform :ios 和我的项目的部署目标。
【讨论】:
SwiftShims 是标准库中定义的模块。它不应该丢失。我想是因为你的DerivedData 路径改变了,现在编译器找不到它的缓存了。
【讨论】:
【讨论】:
您是否尝试删除缓存?
rm -rf /Users/abdulrehman/Desktop/StudentMentor/DerivedData/ModuleCache/DLJPQMLQI1Q/
(我可能复制错了您的文件路径。如果此路径没有可删除的内容,请随意手动输入)
【讨论】:
我遇到了同样的问题...经过大量的试验和错误,以下对我有用..
打开您的 Xcode 工作区文件 -> 项目名称(左侧的目录选项)-> 构建设置 -> 排除架构 -> 选择“任何 iOS 模拟器 SDK”并在其前面输入 arm64(用于构建和发布)。
对 pod 重复相同的过程
转到 VS code 并删除 pod-lock 和 pod 文件夹
打开 podfile 并将以下代码粘贴到 podfile 中“target 'name-tvOS' do”的正上方。
post_install do |installer| flipper_post_install(installer) installer.pods_project.build_configurations.each do |config| config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64" end end end
(注意:上面的一些代码体形式可能已经存在。在这种情况下,用这个替换那部分。)
保存并在项目的终端中运行“pod install”。
返回 xcode 并清除构建 (Cmd+Shift+K),然后构建您的项目 (Cmd+B)
希望它能毫无问题地构建......快乐编码!
【讨论】:
我曾经遇到过一个私有本地 pod,它以某种方式 Cocoapod 将 lib 产品名称设置为例如。 "MyLib-6c4b1003" -- 前缀为十六进制。
这个随机十六进制不知何故改变了,但项目其他链接标志仍然使用旧的。我进行了搜索以找出对旧十六进制的引用并将其删除,运行pod install 并将使用正确的名称。
我仍然不明白为什么前缀中有这个随机十六进制,但似乎项目的 Cocoapods 设置可能引用了错误的。
【讨论】:
当我想从 Cocoapods 中删除 Alamofire 时,我遇到了类似的问题。
那么它需要删除一些东西:
目标 -- 构建设置 -- 其他 Swift 标志
这些垃圾代码对我有用。
【讨论】:
当我运行发布版本并使用Product > Scheme > edit schemes 切换回调试版本时发生这种情况。
删除派生数据没有帮助。
但只需执行 Product > Clean Build Folder 并重新启动 XCode 即可解决问题。
【讨论】:
如果您在预览画布中看到此错误并且诊断“mtime changed”:
'/var/folders/kv/t_w2wdds3m1_0lr02hcp3dgw0000gn/C/clang/ModuleCache/12TRQXIDQ8QQD/SwiftShims-2TTN5UXQBRCCQ.pcm' was built: mtime changed
删除该文件夹中的所有 .pcm 文件,然后重试。 您机器上的文件夹会有所不同。复制位置并运行:
rm <paste path here>/*.pcm
【讨论】: