在将Swift类添加到旧的Xcode项目后,我得到这个错误。

dyld:库未加载:@rpath/libswift_stdlib_core.dylib

我怎样才能使项目再次运行?


当前回答

我在我的项目中添加了SCLAlertView pod,后来删除了它。我没有从我的视图控制器中删除导入SCLAlertView。理想情况下,它应该给出一个编译时错误,但它给出了一个运行时错误,提到dyld: Library not loaded: @rpath/SCLAlertView.framework。我从我的视图控制器中删除了导入SCLAlertView,构建它,它没有给出错误。所以在我的情况下,我试图导入一个没有找到框架的库。删除这些引用将解决您的问题。

其他回答

我有一个Obj-C项目,我开始添加swift源文件。 以下为我解决了这个问题:

链接:RUNPATH SEARCH PATHS = $(inherited) @executable_path/Frameworks Swift编译器-代码生成:嵌入内容包含Swift = YES

我刚刚从Xcode 6.3模板创建了一个新项目,并将项目设置与旧的原始项目进行了比较。

我也遇到过同样的问题,设置正确的代码签名标识解决了这个问题(构建设置->代码签名标识)。

根据苹果的技术问题,“iOS 8发布后创建的所有企业和标准iOS开发者证书在适当的位置都有新的团队ID字段,以允许Swift语言应用程序运行”

在更新到Xcode 10.2 (Swift 5)后遇到了这个问题。找到下面的苹果链接,显示了两个选项: https://support.apple.com/kb/DL1998?locale=en_US

对我来说,我把MacOS更新到10.14.4 (OS中包含Swift库)。否则,“下载Swift 5运行时支持命令行工具”的旧操作系统。

对我来说,这个问题是由于我的苹果全球开发者关系认证机构无效。

从这里下载: https://developer.apple.com/certificationauthority/AppleWWDRCA.cer

拖放到Keychain Access中,清理项目,然后运行。

我也有同样的问题。我的解决方案是将每个pod声明移动到目标子句中。

来自:

pod 'SomePod1'
pod 'SomePod2'
pod 'SomePod3'
target 'MyAwesomeApp', :exclusive => true do

end

To:

target 'MyAwesomeApp', :exclusive => true do
    pod 'SomePod1'
    pod 'SomePod2'
    pod 'SomePod3'
end

我的猜测是,如果pod声明放在目标声明之外,CocoaPods(0.39.0)可能会使用错误的xcconfig。

Pods.debug.xcconfig (X

Pods-MyAwesomeApp.debug.xcconfig (O