我刚开始使用Swift 3,并使用Swift 3.0在xcode中制作了一个简单的应用程序。现在我想使用Swift Package Manager添加一个第三方library。我按照此链接中给出的安装方法进行安装。我创建了Package.swift
文件,如下所示
import PackageDescription
let package = Package (
name : "SwiftPM",
dependencies : [
.Package(url: "https://github.com/ArtSabintsev/Siren.git", majorVersion: 1)
])
但我得到错误No such module "PackageDescription"
5条答案
按热度按时间nafvub8i1#
Swift软件包管理器和Xcode是正交的,也就是说,你不能期望在Xcode中编译Package.swift;在Xcode支持软件包管理器之前,你需要有两个不同的版本--一个使用软件包管理器,一个使用Xcode。
因此,使用Swift软件包管理器,一旦你定义了Package.swift并按照软件包管理器的预期制定了你的目录结构,你只需执行以下操作:
然后,对于Xcode,创建一个使用源代码的Xcode项目,但不使用Package. swift。您需要显式地将Siren.git项目克隆到Xcode构建的源文件中。
ioekq8ef2#
斯威夫特3/4
通过终端导航到您的项目文件夹,并首先运行这些命令
swift package init --type library
,然后运行swift package generate-xcodeproj
Reference
vmdwslir3#
对我来说,这个问题原来是
Target Membership
。我在iOS应用程序项目中手动创建了Package.swift
文件。解决方法:
Package.swift
文件File Inspector
Target Membership
节中的任何模块a14dhokn4#
对于其他面临同样错误的人来说:
修正您的
Package.swift
语法我得到这个错误是因为Xcode还没有完全解析
Package.swift
,因为语法错误。在我的例子中,我有一个
.target(name: "name-of-target", dependencies: [""])
。一旦我删除了空的依赖字符串(""
),Xcode立即解析了这个文件,错误就消失了。但是记住保存这个文件。此外,GoZoner和Pratiks的回答也过时了:
swift package generate-xcodeproj
已过时,使用时会显示错误消息:**警告:**Xcode可以直接打开和构建Swift软件包。不再需要“generate-xcodeproj”,并且很快将被弃用。
更多关于这是什么的信息,以及为什么它消失了here。
db2dz4w85#
请参阅以下链接中的解决方案:
https://forums.kodeco.com/t/server-error-no-such-module-packagedescription/177438
命令: