【发布时间】:2011-10-18 19:26:56
【问题描述】:
在我的应用程序中,我使用了触发一些警告的第 3 方代码。我审查了它们,可以放心地忽略它们。
现在我想以某种方式“标记”一个文件,因此 Xcode 不会对该文件中的代码显示任何警告。
我该怎么做?
【问题讨论】:
在我的应用程序中,我使用了触发一些警告的第 3 方代码。我审查了它们,可以放心地忽略它们。
现在我想以某种方式“标记”一个文件,因此 Xcode 不会对该文件中的代码显示任何警告。
我该怎么做?
【问题讨论】:
选择您的目标并显示构建阶段。然后在搜索框中输入文件的名称,您应该会看到它在 Compile Sources 阶段列出。双击该文件的 Compiler Flags 列并输入 -w 以关闭该文件的所有警告。
【讨论】:
-w 关闭所有警告,但也许新编译器没有注意这一点。在这种情况下,请关闭个别警告。在 Build Settings 中找到有问题的警告,并在 Utilities 视图中显示 Quick Help。您应该会看到一个描述,其语法为 -Wname-of-warning。在名称前加上“no-”并在编译器标志中指定。示例:关闭-Wunused-parameter 指定-Wno-unused-parameter
-w 的项目中可以解决问题,而在其他使用普通 GCC 编译器 -Wno-name-of-warning 的项目中是唯一的方法。
-w 和 LLVM)。当您包含不想修改的第三方文件时非常方便。
在左侧导航器中选择项目,然后选择目标进入构建阶段并将 -w 放入目标文件的构建阶段。它将隐藏所有编译器警告
【讨论】:
这适用于 Xcode 10.2+ 和 Swift 5
手动修复:
从 Xcode > Project > Targets > Compile Sources > 将-w -Xanalyzer -analyzer-disable-all-checks 添加到有问题的文件中 > 双击要关闭警告的文件。
Cocoapods 修复:
如果您试图抑制来自有问题的 pod 的警告,您可以使用 podfile 中的 inhibit_warnings 标志自动抑制来自依赖项的所有警告:
pod 'Kingfisher', '~> 4.6', :inhibit_warnings => true
【讨论】: