问题描述
我遵循了Vapor网站文档,创建了hello项目。 VaporDocs
在hello项目路径下,在终端中输入swift build
。但是当打开Package.swift时,Xcode开始再次获取蒸气。
为什么?所有依赖项存储库都位于.build
路径中吗?为什么Xcode开始重新获取Vapor?
swift package generate-xcodeproj
可以帮助生成xcode项目,似乎所有依赖项都不再打包了。只是分组。
仅打开Package.swift和使用swift package generate-xcodeproj
然后打开生成的xcodeproj文件有什么区别?
使用Xcode打开Pacakge.swift,非常缓慢地获取Vapor。有什么更好的方法吗?
就像告诉Xcode一样,一切都在./build
路径中。
解决方法
在终端中处理项目时,请使用类似的命令
swift package update
swift build
swift run
swift package generate-xcodeproj
这些命令适用于隐藏的.build
文件夹,而swift package generate-xcodeproj
生成的Xcode项目也适用于该.build
文件夹。 xcodeproj
的唯一缺点是,如果您更改Package.swift
或手动(在Xcode之外)从Sources
文件夹中添加/删除某些文件,则您只能运行swift package generate-xcodeproj
或swift package update && swift package generate-xcodeproj
。
当您通过双击Package.swift
打开项目时,它不再使用经典的xcodeproj,现在它是完全动态的,您可以即时编辑Package.swift
和文件,而在Xcode或Finder中,它将跟踪所有更改。尽管听起来很酷,但它并不完美,我仍然喜欢经典的xcodeproj
,因为在需要时执行swift package generate-xcodeproj
并不是很困难。据我所知,没有办法说Xcode在动态模式下使用.build
文件夹,它使用DerivedData
文件夹来存储依赖项。