与TeamCity,xcrun和单引号问题

我在一个IOS项目上使用TeamCity和xcrun来configurationCI。 我正在尝试执行TC构build步骤中的以下命令时遇到问题:

-sdk iphoneos PackageApplication "Build/Release-iphoneos/%Product Name%.app" -o "%system.teamcity.build.checkoutDir%/Build/archive.ipa" --sign "iPhone Distribution: AMERICA'S XXXX" --embed "%Provision File%" 

我得到的错误是:

错误:/ usr / bin / codesign –force – 保存 – 元数据=标识符,权利,资源规则 – 签名“iPhone分布:AMERICA的 – 资源规则= /图书馆/团队/ buildAgent / temp / buildTmp / PotQjg91Ef / Payload / ACCU Deposit.app/ResourceRules.plist/Library/ TeamCity / buildAgent / temp / buildTmp / PotQjg91Ef / Payload / ACCU Deposit.app失败,出现错误1.输出:“iPhone Distribution:AMERICA'S:no identity found [2013-05 -16 14:58:46,533] err – [2013-05-16 14:58:46,533] out – [2013-05-16 14:58:46,540] out – 进程退出代码1

我认为非常清楚,问题在于xcrun处理单引号的方式。 我试图把这个单引号加倍到“美国”,但那没用。 有人可以帮我吗? 有没有办法在xcrun中转义单引号?

尝试“iPhone分布:美国的XXXX”。

您需要引用签名实体iPhone Distribution: AMERICA'S XXXX ,使其成为--sign唯一参数,否则将被空格分隔,仅被识别为第一部分。 这就是PackageApplication识别的命令参数。

我不知道你的命令的语法,但似乎你应该把iPhone Distribution: AMERICA'S XXXX在一个variables,如%Sign Entity% 。 那么整个命令应该是这样的:

-sdk iphoneos PackageApplication "Build/Release-iphoneos/%Product Name%.app" -o "%system.teamcity.build.checkoutDir%/Build/archive.ipa" --sign "%Sign Entity%" --embed "%Provision File%"

Interesting Posts