【发布时间】:2019-11-14 07:56:28
【问题描述】:
我想用 SPM 替换 cocoapods。我决定一次去一个图书馆。我从 cocoapods 中删除了 swinject 库并通过File->Swift Packages->Add Package Dependency添加它
这很成功,项目按预期构建和运行。
然后我请团队中的其他人检查分支,看看他们是否可以毫无问题地构建项目。然后我们遇到了错误“缺少包装产品'Swinject'”。我们通过在 Xcode 中执行 File->Swift Packages->Resolve Package Versions 解决了这个错误。
我也需要在构建服务器上运行它。我尝试在终端应用程序中输入swift package --help 以查看可用的命令。 resolve 命令看起来很有希望,所以我尝试了但无济于事。 (错误:找不到根清单)
那么,我的问题是,是否有与File->Swift Packages->Resolve Package Versions 相同的终端命令?
注意:当我通过 SPM 添加第 3 方库时,它为我创建了一个文件:Proj.xcworkspace/xcshareddata/swiftpm/Package.resolved。它还对Proj.xcodeproj/project.pbxproj 文件进行了各种更改。没有创建 package.swift 文件。
更新:
我得到的最接近答案的是我应该尝试xcodebuild -resolvePackageDependencies,不幸的是该命令与File->Swift Packages->Resolve Package Versions 的作用不同。
【问题讨论】:
-
如果有人路过但他们的 CI 仍然存在问题,您还可以检查您是否忽略了位于
.swiftpm/xcode/文件夹中的方案
标签: xcode swift-package-manager