Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Xcode 4.5中的归档-没有错误,但构建已取消

Xcode 4.5中的归档-没有错误,但构建已取消
EN

Stack Overflow用户
提问于 2013-06-01 04:44:07
回答 7查看 3.9K关注 0票数 12

我已经开发iOS应用程序超过2年了,从来没有遇到过这个问题。我正在尝试存档一个测试版的应用程序。构建成功,但在该过程的最后,Xcode报告“存档已取消”。

构建日志不会显示任何类型的警告或错误。

有时,通过清理/清理构建文件夹/擦除派生数据,我可以使归档成功,但似乎没有模式。有没有人遇到过这个问题?在这种情况下,我甚至没有任何东西可以用来处理错误消息。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2013-06-02 17:29:19

你有没有一个自定义的运行脚本,可以用agvtool来升级版本?我发现这正是导致这种行为的原因。几乎100%的归档失败,以及常见的构建失败。移除它为我解决了这个问题。

票数 51
EN

Stack Overflow用户

发布于 2015-04-29 01:42:26

首先:ConfusedNoob的答案是+1,因为这就是问题所在(这让我做了无数次实验,最后得到了这个解决方案)。如果我的回答对你有帮助,+1他的也是,因为他的暗示是巨大的!

(另外,请参阅下面我的另一个答案,它完全绕过了agvtool。我最终习惯于在我的所有项目中使用它。)

我一直在处理它,我发现唯一能可靠地解决它的事情是在适当的方案中使用agvtool作为预操作,而不是在构建阶段使用run-script。

要编辑方案的

  • CMD-SHIFT-comma (选择要启用的方案,请单击6.x)
  • Twiddle-open XCode)。我是在RunArchive上做的,但我可能真的只需要在archive.
  • Select上使用"+“图标和”
  • run script action“来添加你的agvtool脚本。如果你关心,我的是:

cd ${PROJECT_DIR};xcrun agvtool next-version -all

(注意:pre-action不能自然地在${PROJECT_DIR}中运行,因此您必须使用cd。)

关闭并保存,就是这样。

问题是agvtool会修改项目文件(不必要,因为我们关心的所有内部版本号都在其他地方),而修改项目文件会导致构建取消。

在这个问题上也是+1 --天哪,这是一个很难回答的问题!

票数 30
EN

Stack Overflow用户

发布于 2015-05-25 13:12:20

另一种技术是完全跳过agvtool。只需将此运行时脚本添加到构建阶段的末尾(在复制捆绑包资源之后)。

  • 选择您的项目

  • 选择构建阶段和+

  • Add a Run Script phase

(添加新的阶段设置)

  • 输入脚本

为了便于复制/粘贴,该脚本如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"

确保脚本在构建的复制捆绑阶段之后运行

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16869159

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文