Swift 实用工具 — SwiftLint

前言

SwiftLint 是一个实用工具,用于实现 Swift 的风格。 在 Xcode 项目构建阶段,集成 SwiftLint 很简单,构建阶段会在编译项目时自动触发 SwiftLint。

遗憾的是,目前无法轻松地将 SwiftLint 与 Swift Packages 集成,Swift Packages 没有构建阶段,也无法自动运行脚本。

本文介绍了如何在 Xcode 中使用 post action 脚本在成功编译 Swift Package 后自动触发 SwiftLint。

SucceedsPostAction.sh

SucceedsPostAction.sh 是一个 bash 脚本,用作 Xcode 中的 “Succeeds” 发布操作。当你编译一个 Swift 包时,这个脚本会自动触发 SwiftLint。

安装

  1. 在 Mac 上下载脚本 SucceedsPostAction.sh。

  2. 确保脚本具有适当的权限,即运行 chmod 755 SucceedsPostAction.sh。

  3. 如果要使用自定义 SwiftLint 规则,请将 .swiftlint.yml 文件添加到脚本旁边。

  4. 启动 Xcode 13.0 或更高版本

  5. 打开 Preferences > Locations 并确保 Command Line Tools 设置为 Xcode 版本

  6. 打开 Preferences > Behaviors > Succeeds

  7. 选择脚本 SucceedsPostAction.sh

image

就是这样:每次编译 Swift 包时,SucceedsPostAction.sh 都会运行 SwiftLint。

Demo

image

限制

在 Xcode 中运行的 post action 脚本无法向 Xcode 构建结果添加日志、警告或错误。因此,SucceedsPostAction.sh 在 Xcode 中以新窗口的形式打开一个文本文件,其中包含 SwiftLint 报告列表。没有深度集成可以轻松跳转到 SwiftLint 警告。

Swift 5.6

请注意,由于SE-0303: Package Manager Extensible Build Tools,Swift 5.6(在撰写本文时尚不可用)可能会有所帮助。集成 SE-0303 后,不再需要此脚本。

下载

您可以在 Github 上找到最新版本的脚本 SucceedsPostAction.sh。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容