xcode 没有这样的模块“PackageDescription”

rxztt3cl  于 2022-12-14  发布在  其他
关注(0)|答案(5)|浏览(323)

我刚开始使用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"

nafvub8i

nafvub8i1#

Swift软件包管理器和Xcode是正交的,也就是说,你不能期望在Xcode中编译Package.swift;在Xcode支持软件包管理器之前,你需要有两个不同的版本--一个使用软件包管理器,一个使用Xcode。
因此,使用Swift软件包管理器,一旦你定义了Package.swift并按照软件包管理器的预期制定了你的目录结构,你只需执行以下操作:

swift build

然后,对于Xcode,创建一个使用源代码的Xcode项目,但不使用Package. swift。您需要显式地将Siren.git项目克隆到Xcode构建的源文件中。

ioekq8ef

ioekq8ef2#

斯威夫特3/4

通过终端导航到您的项目文件夹,并首先运行这些命令swift package init --type library,然后运行swift package generate-xcodeproj
Reference

vmdwslir

vmdwslir3#

对我来说,这个问题原来是Target Membership。我在iOS应用程序项目中手动创建了Package.swift文件。
解决方法:

  • 选择并转到Package.swift文件
  • 打开右侧File Inspector
  • 取消选择Target Membership节中的任何模块

a14dhokn

a14dhokn4#

对于其他面临同样错误的人来说:

修正您的Package.swift语法

我得到这个错误是因为Xcode还没有完全解析Package.swift,因为语法错误。
在我的例子中,我有一个.target(name: "name-of-target", dependencies: [""])。一旦我删除了空的依赖字符串("",Xcode立即解析了这个文件,错误就消失了。但是记住保存这个文件。

此外,GoZoner和Pratiks的回答也过时了:

  • Xcode现在与Swift Packages集成(如上所示)
  • swift package generate-xcodeproj已过时,使用时会显示错误消息:
    **警告:**Xcode可以直接打开和构建Swift软件包。不再需要“generate-xcodeproj”,并且很快将被弃用。

更多关于这是什么的信息,以及为什么它消失了here

db2dz4w8

db2dz4w85#

请参阅以下链接中的解决方案:
https://forums.kodeco.com/t/server-error-no-such-module-packagedescription/177438
命令:

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer

相关问题