我希望使用Swift Package Manager编写我的项目。据我所知,唯一能够获得代码补全的方法是通过Xcode。其他所有尝试在Vim中获取代码补全的方式都失败了。
我的Swift包设置:
$ mkdir SwiftProject
$ cd SwiftProject
$ swift package init --type executable
这个步骤会生成标准的包结构,其中包括
Package.swift
、包含 main.swift
等文件的源文件夹等。$ swift package generate-xcodeproj
最后一步会生成包含所有设置用于在Xcode中构建swift包的
SwiftProject.xcodeproj
。到目前为止,一切都很顺利,直到通过
Package.swift
添加依赖项。我的当前
Package.swift
:import PackageDescription
let package = Package(
name: "SwiftProject",
dependencies: [
.Package(url: "https://github.com/czechboy0/Socks.git", majorVersion: 0, minor: 7)
]
)
现在当我在我的
main.swift
中import SocksCore
并使用它时,通过CLI swift build
编译很好,并且可以运行。但是我的Xcode项目无法编译,因为它找不到SocksCore模块。我认为我需要导入.dylib
文件,这样Xcode就可以构建项目。现在我的问题是:如何使用SPM生成这些动态库?我找不到方法来做到这一点。关于使用SPM和Xcode的每个教程都有这个
.dylib
或静态库.a
,但是这些教程是使用比我的旧的开发快照版本构建的。我使用的是DEVELOPMENT-SNAPSHOT-2016-06-06-a
。我找不到使用我的快照构建它们的方法。这不再可能吗?还是我在这一点上做错了什么?还是有其他方法可以使用SPM和Xcode?如果我能找到一个解决方案来启动我的项目,那就太好了。