Swiftlint 自动更正命令不起作用

问题描述 投票:0回答:3

我已经使用 cocoapods 安装了 swiftlint 并且它工作正常

但是当我尝试在终端中使用

swiftlint autocorrect
命令时,它给出以下错误

-bash: swiftlint: command not found

我是否需要进行任何其他设置才能使该命令在终端中运行?

注意:由于 Mac 上的一些限制,无法使用 SwiftLint 包。

ios swift cocoapods swiftlint
3个回答
8
投票

Pod 安装在项目本地的文件夹中,而不是安装在终端 $PATH 变量中已定义的任何全局文件夹中,因此终端无法找到脚本。

有几个选项,但主要归结为更具体地说明可执行文件的位置,假设(例如)您的项目文件夹位于

/Users/John/Documents/MyiOsProject/

pod 可能安装在 Pods/SwiftLint/bin 中

所以你应该能够运行

/Users/John/Documents/MyiOsProject/Pods/SwiftLint/bin/swiftlint autocorrect

这显然很快就会变得乏味,所以只需给它起一个别名即可。 (另一个选项是符号链接)

打开文件

~/.bashrc
进行编辑并添加

alias swiftlint='/Users/John/Documents/MyiOsProject/Pods/SwiftLint/bin/swiftlint'

那么您应该只需输入

swiftlint autocorrect
即可。

注意:我不知道你的确切路径,所以你可能需要做一些小的改变。


1
投票

将 swiftlint 安装为 cocoapod 不会修改 $PATH 变量以包含 swiftlint 命令的路径。 这里是执行此操作的指南。

swiftlint 命令的路径可能是 $HOME/Pods/SwiftLint 或类似的东西。


0
投票

似乎该命令已重命名为:

swiftlint --fix

此命令成功启动自动更正!

© www.soinside.com 2019 - 2024. All rights reserved.