迁移到mojave和xcode 10的问题(到两个xcode的旅程)

我遇到以下问题,我对xcode 4.9的sierra具有与swifth 4兼容的cocoapods的高警告。 但是我没有耐心,所以我安装了莫哈韦沙漠。 “因为为什么不”。 它具有黑暗模式! 而且非常漂亮。 因此,作为一名优秀的程序员,它不想记住过去,因为一切都可以,因为我安装了它的所有内容都安装了新更新,并且在1周内一切都非常完美。


但是最终,我需要在上一个项目中工作才能为客户进行一些更改。 一切看起来都很好,因为如果您选择编译到仿真器,那么一切都会正常进行。

问题是当您想交付给质量保证团队进行物理设备测试时。 为此,您需要“存档”该应用程序,但是要进行存档,您需要在“通用设备模式”下构建。在这种模式下,它尝试编译为设备的特定体系结构,在这种情况下是armv7,但失败了。

我遇到的第一个错误是语法错误,swift 3到swift 4在协议内部没有代码的情况下遇到了一些问题,知道swift的一些专家会说,不,这不是问题,这就是为什么您需要这样做,请修复您的代码,但是您需要知道此代码根本不是我的问题,我只是遗传问题,需要修复。

所以我花了很多时间试图使这项工作。 (如果您不想要答案,则需要等待,因为这很困难,我想让您知道它有多困难。Naa开玩笑地说,最终的解决方案是再次安装xcode 4.9.1 ,令我惊讶的是,它兼容Mojave的版本,但在同一台计算机上使用两个xcode时需要了解一些事项。

所以我去了https://swift.org/download/#releases并下载了与原始代码版本最接近的swift 4.1.2文件。

请注意,我下载了两个文件,即工具链和调试符号,这一点很重要。

在我安装并重新尝试编译之后,令我惊讶的是它可以在“通用模式”下编译,万岁!!! 因此,我创建了文件“ .ipa”,并通过daiwi.com分发。 所以我开始下载,但卡住了。 再次恐怖。 IPA文件已损坏。 所以我有点失望。

之后,我尝试了我的最后一个资源。 再次下载xcode 9.4.1(非常具体)。 (您可以通过下载在developer.apple.com网页内进行下载。https://developer.apple.com/download/more/

接下来,我安装了它,它可以编译,Hurray,它可以创建IPA,Hurray,当我尝试安装时它可以工作。 很棒!!!!

但是,并非所有事情都能轻松解决,因此您需要两个xcode。 一个用于使用适当的工具链(Swifth 4.1.3 xxx.xxx.xxx)(Xcode 10)在仿真器中开发代码并进行测试,另一个仅用于编译代码,因为出于某种原因仿真无法正常工作,因此您进行测试xcode 10中的应用程序。(要使两个xcode正常工作,您需要删除每次使用xcode时创建临时文件 ),因此,如果首先从Xcode 10更改为Xcode 9,则需要删除(https:/ /stackoverflow.com/questions/18933321/can-i-safe-delete-contents-of-xcode-derived-data-folder)

如果不这样做,则xcode可能会表现为extrange。 而且您可以花很多时间尝试了解为什么不起作用。

最后,对于我写这篇文章的错误,我深表歉意,我只是想摆脱我的这种挫败感,因为我知道有人也有类似的问题。 我稍后将修复修订。