Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 错误:无法';t IRGen表达式,无其他错误_Swift_Xcode_Debugging_Lldb_Xcode10 - Fatal编程技术网

Swift 错误:无法';t IRGen表达式,无其他错误

Swift 错误:无法';t IRGen表达式,无其他错误,swift,xcode,debugging,lldb,xcode10,Swift,Xcode,Debugging,Lldb,Xcode10,我无法在UI测试中打印调试信息。配置:Xcode 10和SWIFT 4.2 当我试图在控制台中打印某些内容时,我只能看到一个错误: "error: Couldn't IRGen expression, no additional error" 我在早期版本的Xcode(8、9等)中没有任何问题,只有在Xcode 10中。当我放置断点并尝试打印例如apppo xguiapplication()或类似的东西时,我无法打印任何内容 在早期版本的Xcode中,当我在控制台中编写时: “po xgui

我无法在UI测试中打印调试信息。配置:Xcode 10和SWIFT 4.2

当我试图在控制台中打印某些内容时,我只能看到一个错误:

"error: Couldn't IRGen expression, no additional error" 
我在早期版本的Xcode(8、9等)中没有任何问题,只有在Xcode 10中。当我放置断点并尝试打印例如app
po xguiapplication()
或类似的东西时,我无法打印任何内容

在早期版本的Xcode中,当我在控制台中编写时:

“po xguiapplication.debugDescription()”
我看到了我的应用程序的结构

我们发现,当将外部框架添加到UI测试目标时,问题就会出现。我们创建了一个示例项目,其中包含RxSwift.framework,可用于重现我们的问题:


注意。

swift调试格式是swift内部对象的二进制转储,因此您必须使用正在使用的调试器附带的编译器编译二进制文件,否则会出现问题

我可以使用Xcode 10.0和您提供的项目重新设置您看到的行为。但是后来我从github获得了RxSwift源代码,并用Xcode 10.0编译器重新构建了它们,并用我在本地构建的RxSwift.framework替换了您的RxSwift.framework,然后重新运行测试,并且您附加到断点的表达式工作正常。你能看看这是否也适用于你吗


调试器应该给出更好的错误消息,如果您想向swift bug reporter()提交错误,我们可以考虑改进错误消息。

我对Carthage-RxSwift也有同样的问题

从中删除文件

迦太基/建筑/

迦太基/退房/

在终端中调用迦太基更新解决了我的问题

更新:


我们注意到,只有将RxSwift库更新到4.3及以上版本时,才会出现此问题。将版本设置为4.2.x可以正常工作。

我对迦太基也有同样的问题。然而,在更仔细地观察控制台时,我发现Carthage没有构建RxSwift,而是下载了预构建的二进制文件

*** Downloading RxSwift.framework binary at "Zürich"
这反过来又导致了IRGen错误。因此,迫使迦太基构建框架而不是下载二进制文件是可行的

carthage update --platform iOS --no-use-binaries

没有帮助我:应用程序使用内部框架,在本地重建所有内容。还是一样的错误。Xcode 10,开发目标为iOS 9.0,在iOS 11.2中运行应用程序simulator@JOM如果您可以共享您的项目,请向或提交一个bug。重建一切目前是成功的必要条件,任何情况下,这不是一个充分条件,我们想看看。对不起,大规模的企业应用程序。无法共享项目,也无法创建小型独立示例:(迦太基更新--platform iOS--no use binaries对我来说很好。但是如果你与其他开发人员一起工作,并且你将迦太基构建推送到repo,那么问题仍然会发生在其他开发人员身上,因为RxSwift构建是在我的计算机上完成的。而这只发生在RxSwift框架上。