我正在使用 Jenkins 设置 CI 系统,但发现构建失败,因为 xcodebuild 在我执行该行时报告没有方案
-xcodebuild -workspace XXX -scheme NNN。
我不知道为什么会发生这种情况,所以为了消除我的工作区的一些麻烦,我使用 XCode 创建了一个新的项目模板,发现我在任何 xcodebuild 命令和任何工作区/项目的行为上都有所不同.
模板项目被称为废品,如果从终端命令行我运行这个命令,例如:
xcodebuild -list
它输出
Information about project "scrap":
Targets:
scrap
Build Configurations:
Debug
Release
If no build configuration is specified and -scheme is not passed then "Release" is used.
Schemes:
scrap
但是,如果我从 Jenkins 中运行 xcodebuild -list,那么输出将是:
Building in workspace /Users/Shared/Jenkins/Home/workspace/scrap
[scrap] $ /bin/sh -xe /var/folders/ph/s6dvlfq9769741g_yzmjlmz000007c/T/hudson3765407964219991487.sh
+ xcodebuild -list
Information about project "scrap":
Targets:
scrap
Build Configurations:
Debug
Release
If no build configuration is specified and -scheme is not passed then "Release" is used.
This project contains no schemes.
这是最简单的 jenkins 作业 - 我所做的就是创建一个新作业,将其设置为自由风格的软件项目,然后添加 Execut shell 的构建步骤并添加 xcodebuild -list 命令,就是这样。
为什么 xcodebuild 说有方案时没有方案?为什么它在 Jenkins 内部运行时表现不同?