前言SwiftLint是一个用于在Swift中实现样式的实用程序。在Xcode工程构建阶段集成SwiftLint很简??单,编译工程时自动触发SwiftLint。不幸的是,目前无法轻松地将SwiftLint与SwiftPackages集成,后者没有构建阶段,也无法自动运行脚本。本文介绍了如何在成功编译SwiftPackage后使用Xcode中的postaction脚本自动触发SwiftLint。SucceedsPostAction.shSucceedsPostAction.sh是一个bash脚本,在Xcode中用作“成功”后操作。当您编译Swift包时,此脚本会自动触发SwiftLint。在Mac上安装下载脚本SucceedsPostAction.sh。确保脚本具有适当的权限,即运行chmod755SucceedsPostAction.sh。如果您想使用自定义SwiftLint规则,请在您的脚本旁边添加一个.swiftlint.yml文件。启动Xcode13.0或更高版本打开Preferences>Locations并确保CommandLineTools设置为Xcode版本打开Preferences>Behaviors>Succeeds选择脚本SucceedsPostAction.sh就是这样:SucceedsPostAction.sh在每次编译Swift包时运行SwiftLint。Demo限制在Xcode中运行的后操作脚本向Xcode构建结果添加日志、警告或错误。因此,SucceedsPostAction.sh在Xcode的新窗口中打开一个文本文件,其中包含SwiftLint报告列表。没有深度集成可以轻松跳转到SwiftLint警告。Swift5.6请注意,由于SE-0303:包管理器可扩展构建工具[1],Swift5.6(在撰写本文时不可用)可能会有所帮助。集成SE-0303后,不再需要此脚本。
