xcode 构建错误:项目不包含方案

Posted

技术标签:

【中文标题】xcode 构建错误:项目不包含方案【英文标题】:xcode build error: project does not contain a scheme 【发布时间】:2017-05-23 07:48:02 【问题描述】:

我正在开发一个离子应用程序,但是当我尝试构建它时,它给了我以下错误

xcodebuild: error: The project named "SnapHome" does not contain a scheme named "SnapHome". The "-list" option can be used to find the names of the schemes in the project.

以下是可用的方案

Information about workspace "SnapHome":
    Schemes:
        SnapHome

我正在使用以下脚本和企业配置文件来构建应用程序,我已经使用相同的脚本来构建其他cordova应用程序

cordova build
projectname='xxxxx'
provisionprofilename="xxxxxxx"
outoutdirectory="xxxxxxx"
xcodeprojectdirectory="yyyyyy/snapapp/platforms/ios"

rm -f "$outoutdirectory"/"$projectname".xcarchive
rm -f "$outoutdirectory"/"$projectname".ipa

xcodebuild clean -project "$xcodeprojectdirectory"/"$projectname".xcodeproj -configuration Release -alltargets

xcodebuild -workspace "$xcodeprojectdirectory"/"$projectname".xcworkspace -list

xcodebuild archive -project "$xcodeprojectdirectory"/"$projectname".xcodeproj -scheme "$projectname" -archivePath "$outoutdirectory"/"$projectname".xcarchive

xcodebuild -exportArchive -archivePath "$outoutdirectory"/"$projectname".xcarchive -exportOptionsPlist exportPlist.plist -exportPath "$outoutdirectory"/"$projectname".ipa

能否请您告诉我是什么问题以及如何解决此问题。我正在使用 xcode 8.3.2

【问题讨论】:

【参考方案1】:

我在构建时遇到了同样的问题,只是检查 Product > Scheme > Edit Scheme 上的 Shared 选项实际上并没有将方案添加到源代码控制中。

发生的情况是,当您共享方案时,xcode 会将方案从本地用户 xcuserdata 复制到 .xcodeproj 下的新文件夹 xcshareddata/scschemes 但是当您提交并推送更改时,此新文件夹不包括在内默认情况下,您需要强制提交。 一旦我强制提交新的xcsharedata/xcshemes 文件夹,构建服务器现在可以成功找到该方案。

希望这会有所帮助。

【讨论】:

首先我在 Edit Scheme 屏幕上共享了方案,然后我将 xcshareddata/schemes 添加到我的提交中并推送到服务器。这使得该方案在构建服务器上可用。【参考方案2】:

这可以通过共享方案来完成。它可以从底部面板中的 Product > Scheme > Edit Scheme > Shared [check box] 中获得

【讨论】:

以上是关于xcode 构建错误:项目不包含方案的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode 项目中构建所有目标(或方案)

带有 Xcode 工作区的 Team City CI - 方案“我的方案”未配置为运行

Jenkins没有找到xcode方案,但是模式是共享的

有没有办法在 Xcode 9 中更改每个方案的 .xcconfig 文件?

SQLCipher、Xcode 4 和创建 IPA

Xcode 4 - 专用配置设置:构建设置和方案定义