Swift Package Manager是否具有本地缓存​​?

问题描述

每次加载新程序包时,Xcode都会从Github重新下载所有依赖项,而不是重复使用已经为其他项目加载的依赖项。

例如,我希望当我引用.package(name: "SwiftyJSON",url: "https://github.com/SwiftyJSON/SwiftyJSON.git",from: "5.0.0")并且在笔记本电脑上有匹配的软件包时,Xcode不会重新下载该软件包。

是否可以将Xcode配置为使用更积极的缓存策略?

解决方法

从 Xcode 12.5 开始,依赖项缓存在 ~/Library/Caches/org.swift.swiftpm/

编辑

不是编译的依赖项而是只有源代码(检出)被缓存在这个地方。看来我们必须等待另一个更新,直到 Apple 提供 xcodebuild 选项来传递依赖项的 build_path