问题
I am new to Swift and Xcode. I am running macOS Sierra and Swift 3.
For my first forays in Swift, I am developing a simple command line tool. There are a couple of Swift packages that I want to use and the installation instructions for both packages on GitHub says to use the Swift package manager by simply adding them as dependencies in the package manifest file.
What I can't figure out is how to do this in Xcode. Do I just create a 'package.swift' file in the root of my project? Doing this and then running the project doesn't seem to work as the required packages don't seem to be added to my project.
Am I doing something wrong?
回答1:
Xcode and the SPM can work together, but as far as I can tell you do need to take one step on the command line.
Put your package manifest file into the same directory as the Xcode project, and then invoke swift package generate-xcodeproj
The package manager will pull down your dependencies and rewrite the .xcodeproj file to refer to them.
It will preserve any existing source, but the directory structure will be reconfigured to SPM's preferred arrangement:
PROJECT_DIR
├── Sources
│ └── ProjectName
│ ├── YourCode.swift
│ └── YourOtherCode.swift
├── Dependencies
│ └── SomeDependency
│ ├── DependencyCode.swift
│ └── OtherDependencyCode.swift
└── Package.swift
N.B., I haven't tested this extensively on a live project; given the fact that SPM docs still say WIP, please make sure you've made a recent commit.
回答2:
In addition to running swift package generate-xcodeproj
, I had to build my project in Xcode before I could use the installed packages.
来源:https://stackoverflow.com/questions/39708845/adding-swift-3-packages-to-xcode-8-using-the-swift-package-manager