Xcode 中 Swift Package Manager 速度慢

您所在的位置:网站首页 xcode131 Xcode 中 Swift Package Manager 速度慢

Xcode 中 Swift Package Manager 速度慢

2023-03-28 07:59| 来源: 网络整理| 查看: 265

生活的节奏可以慢一些,但开发的效率,却不行。

这个问题的起源,是学习 Vapor 的时候,项目依赖了很多的 Swift Package,然后这些依赖包的获取源头,都在Github上。所以试了几次,拉去速度都很慢,而且会出现网络错误。这里的网络大环境如此,就不吐槽了,简单说下解决方法。现在看看,不断摸索中,慢慢的也有了终极方案。

代理

Swift Package 速度慢的根本原因,在于包所在的 Github 网站和我们的链接有问题。通过代理访问,速度稳定就快了很多。

但是,这里还有一个问题,就是 Xcode 中,拉取 Swift Package,实际上是不走系统的代理的,因为打开代理,即使是全局模式,依然没有解决速度问题。但通过代理的浏览器访问Github,速度却很快。由此可判。

方法一、在路由器解决

这是一个很直接的方法,就是在路由器中设置代理,这属于从网络源头解决,如何实现,可能对于不熟悉的人来说,还是有点复杂的。

方法二、命令行,适用于拉取更新SPM 为终端开启代理, all_proxy=的值是你的代理地址。 $ export all_proxy=socks5://127.0.0.1:7890 复制代码 xcode 的 spm 拉取更新命令。 $ xcodebuild -resolvePackageDependencies -scmProvider system 复制代码

到此,重新打开项目,发现项目依赖的包已经更新完毕。🎉

参考:如何让swift package manager走代理的内容,感谢作者@范德萨就是我分享。

方法三、代理App,解决添加SPM的痛点。🐰强烈推荐

我们使用命令行代理后,对于在文章开头提到的问题,在一个已经添加SPM依赖的项目中,是可行的。 但是,也有新的问题,如果再添加一个SPM呢?仍然绕不过的Xcode中的添加机制(死慢死慢的)。 针对这个问题,找到一个更完全的解决方法,就是针对Xcode,使用代理,让其走代理访问网络。

需要一个负责代理的 App,这里选择Proxifier。 需要为添加代理端口,查看自己的代理的走端口,添加即可。我使用的是Clash Mac版,默认就是127.0.0.1: 7890。

765b197c3da4f8351c02685b2dbc0245.png

为Xcode设定单独设置代理规则。这里需要注意一下,这里需要手动添加一个com.apple.dt.Xcode.sourcecontrol.Git,这个是Xcode中SWP中使用的Git(罪魁祸首)。

QQ20230227-150612@2x.png

参考:Xcode设置SPM代理的内容,感谢作者@独风孤月

此方法解决了Xcode中使用SPM速度慢的问题,这个困扰很长时间问题也告一段落了。🎉



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3