簡體   English   中英

項目中 Xcode 生成的缺少必需的模塊“SwiftShims”錯誤

[英]missing required module 'SwiftShims' error generated by Xcode in project

我以運行狀態復制了我的項目,但復制的項目對我不起作用,盡管實際項目運行良好。 當我構建我復制的項目時,它給了我以下錯誤:

在此處輸入圖像描述

我已清除緩存和派生數據,但構建仍然失敗。

有誰知道可能導致此問題的原因? 提前致謝。

如果您使用CocoaPods ,打開yourProject.workspace而不是yourProject.xcodeproj

您是否嘗試刪除緩存?

rm -rf /Users/abdulrehman/Desktop/StudentMentor/DerivedData/ModuleCache/DLJPQMLQI1Q/

(我可能錯誤地復制了您的文件路徑。因此,如果此路徑中沒有可刪除的內容,請隨時手動輸入)

如果您使用 SPM,刪除.build文件夾並重新運行swift build可以解決我的問題。

  • 轉到您的項目文件夾
  • 刪除 DerivedDataXcode 文件夾中的內容。
  • 清理項目
  • 跑。

我遇到了同樣的錯誤,但原因是將不同的 iOS 版本指定為 Podfile 的platform :ios和我的項目的部署目標。

SwiftShims是標准庫中定義的一個模塊。 它不應該丟失。 我認為這是因為你的DerivedData路徑改變了,現在編譯器再也找不到它的緩存了。

我遇到了同樣的問題......經過大量的反復試驗,以下對我有用..

  1. 打開您的 Xcode 工作區文件 -> 項目名稱(左側的目錄選項) -> 構建設置 -> 排除的架構 -> 選擇“任何 iOS 模擬器 SDK”並在其前面鍵入 arm64(用於構建和發布)。

  2. 對 pod 重復相同的過程

  3. 轉到 VS Code 並刪除 pod-lock 和 pod 文件夾

  4. 打開 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

(注意:上面的一些代碼體形式可能已經存在。在這種情況下,用這個替換那部分。)

  1. 保存它並在項目的終端中運行“pod install”。

  2. 返回 xcode 並清除構建(Cmd+Shift+K),然后構建您的項目(Cmd+B)

希望它可以毫無問題地構建..快樂編碼!

我曾經遇到過一個私有的本地 pod,它以某種方式 Cocoapod 將 lib 產品名稱設置為例如。 “MyLib-6c4b1003”——帶有十六進制前綴。

這個隨機的十六進制不知何故改變了,但項目其他鏈接標志仍然使用舊的。 我進行了搜索以找出對舊十六進制的引用並刪除它們,運行pod install並使用正確的名稱。

我仍然無法理解為什么前綴中有這個隨機的十六進制,但似乎項目的 Cocoapods 設置可能引用錯誤的十六進制。

當我想從Cocoapods刪除Alamofire時,我遇到了類似的問題。 那么它需要刪除一些東西:

目標 -- 構建設置 -- 其他 Swift 標志

這些垃圾代碼對我有用。

如果重命名項目目錄,您可能會收到此錯誤。

供您參考,我使用的是 Flutter,所以

flutter clean

它被解決了。

當我運行發布版本並使用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<\/code>

刪除該文件夾中的所有 .pcm 文件,然后重試。您機器上的文件夾會有所不同。復制位置並運行:

rm <paste path here>/*.pcm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM