创建一个带有依赖项的新 swift 包后,我调用
swift package generate-xcodeproj
。如果我的依赖项有新版本,我会调用 swift package update
。我的依赖项的新版本已下载并构建,但 Xcode 现在对旧版本的依赖项的引用不正确。我可以再次调用 swift package generate-xcodeproj
,但这将删除我设置的任何自定义目标。
如何在不删除自定义目标的情况下更新我的 swift 依赖项和 Xcode 项目?
您可以像 CocoaPods 一样在单独的项目中管理依赖项,而不是尝试保留对生成项目的更改。
开始新项目时:
MyApp.xcodeproj
MyApp.xcworkspace
mkdir MyDeps && cd MyDeps
swift package init --type library
Package.swift
swift package generate-xcodeproj
MyDeps.xcodeproj
添加到您的工作区 MyApp.xcworkspace
MyDeps.framework
添加到应用程序的链接框架 MyApp.xcodeproj
通过此设置,您可以自由更新 Package.swift 中的依赖项并根据需要重新生成依赖项目。
我在使用 Xcode 12.5 时遇到了 CryptoSwift 问题。我的版本是1.3.1,问题在1.4.0中得到修复。 我试过了:
但是两者都不起作用。
我手动去更改了目标 -> Swift 包 -> 版本规则 Xcode 自动安装了较新的版本,我就摆脱了错误。