本文介绍: 前言SwiftLint一个实用工具用于实现 Swift风格。 在 Xcode 项目构建阶段集成 SwiftLint简单构建阶段会在编译项目自动触发 SwiftLint。遗憾的是,目前无法轻松地将 SwiftLint 与 Swift Packages 集成,Swift Packages 没有构建阶段,也无法自动运行脚本。本文介绍如何在 Xcode使用 post action 脚本在成功编译 Swift Package自动触发 SwiftLint。SucceedsPostA

前言

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

遗憾的是,目前无法轻松地将 SwiftLintSwift 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

原文地址:https://blog.csdn.net/qq_36478920/article/details/123177975

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_16283.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注