概述
我们知道Xcode可以随心所欲的引用Apple自己或第三方的Swift包,但大多数情况下这些包都处于网上的github仓库中。
如果因网络原因导致github网站访问不稳定,那么Xcode就无法正常抓取该Package的内容。
有时候,虽然github可以通过浏览器访问,但Xcode抓取其中Swift包内容时仍会发生访问失败的情况。
那么,此时我们如何使用对应的Swift包呢?
答案是:使用本地Swift Package!
本篇博文中,您将了解到Xcode 13如何访问并使用本地Swift包,十分简单!
Let's Go! ;)
第一步:下载Swift Package
首先,需要将github或其它git仓库中的包下载到本地,如果你有信赖的码农好基友,你也可以直接向他们索要。
如上图所示,请确认Swift包目录中包含Package.swift文件,否则这可能完全不是一个Swift包。
上面是我趁github不抽风的时候偷偷下载的Swift包:SwiftSoup。该包的地址为:
因为多次使用Xcode包管理器(SPM)连接该地址却不可得,所以只有手动从github中下载它。
第二步:将Swift包导入Xcode
打开Xcode中的包管理器,点击下方的 Add Local... 按钮
在弹出窗口界面中选择你刚才下载的包目录,注意不要进入到包目录的内部,直接选择包目录本身即可:
之后,你会发现Swift包在你的Xcode项目中已经可见了:
但此时你仍然无法使用它!你在源代码文件中引用它的后果就是,该库无法被找到:
所以,还缺最后一步!
3. 加载Swift Package到项目中
因为该Swift包是从本地而不是远程github仓库加载,所以我们不能回到Xcode的SPM中载入该库,而是需要在项目目标(TARGETS)的Frameworks,Libraries and Embedded Content 标签中嵌入该包:
点击上图中的小加号,然后在弹出窗口中选择之前引入项目的包:
将其添加到项目中后,在代码中引用该库,然后再次编译,你会发现Xcode清净了,整个世界也清净了!8-)
总结
本篇博文介绍了如何使用本地Swift包,非常简单。
至此,相信大家对于如何在Xcode项目中加载本地Swift Package已经了然于胸了吧?
希望本篇博文能让小伙伴们少走些弯路!
感谢观赏,再会!;)