安装phpcs sublime text 2会产生OSError:[Errno 2]没有这样的文件或目录

时间:2014-07-18 16:33:15

标签: sublimetext2

我刚刚通过包管理器在sublime text 2上安装了phpcs。当我去工具 - >嗅探这个文件时,我在控制台中收到了这个错误:

traceback (most recent call last):
  File "./sublime_plugin.py", line 362, in run_
  File "./phpcs.py", line 599, in run
  File "./phpcs.py", line 424, in run
  File "./phpcs.py", line 139, in get_errors
  File "./phpcs.py", line 215, in execute
  File "./phpcs.py", line 218, in parse_report
  File "./phpcs.py", line 169, in shell_out
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 623, in __init__
    errread, errwrite)
  File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/subprocess.py", line 1141, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

错误是什么意思?如果我运行python --version,我会看到2.7.5。也许有一些问题,因为它正在寻找/Versions/2.6?

1 个答案:

答案 0 :(得分:2)

由于某些原因,Phpcs插件无法找到您的php二进制文件或phpcs二进制文件。例如,如果你使用的是MacPorts,它们可能安装在/opt/local/bin中,而Homebrew应该安装在/usr/local/bin中(我想,我很久没有使用过HB)。首先,打开终端并输入which phpwhich phpcs,然后复制路径。

接下来,在Sublime中,选择 Sublime Text 2 -> Preferences -> Package Settings -> PHP Code Sniffer -> Settings-Default 。复制文件的全部内容,然后打开 Sublime Text 2 -> Preferences -> Package Settings -> PHP Code Sniffer -> Settings-User (应为空)并将内容粘贴到其中。您现在可以关闭默认设置,因为永远不应该为任何ST2插件修改该文件 - 将任何更改放入用户设置文件中。现在,在“设置 - 用户文件”中,向下滚动到第64行,并在空引号之间放置phpcs的完整路径,如下所示:

"phpcs_executable_path": "/opt/local/bin/phpcs",

如果php二进制文件的路径是 其他 而不是/usr/bin/php,则向上滚动到第36行并将完整路径放入空引号之间:

"phpcs_php_prefix_path": "/opt/local/bin/php",

那应该是它。保存文件,重新启动Sublime,然后尝试" Sniff"命令再次。它没有找到你安装的可执行文件的原因,即使你可以在终端中运行它们(希望如此)是因为从Finder或Dock启动的程序的PATHPATH不同在.profile.bashrc或您拥有的内容中设置终端如果您是Mac电源用户,并希望更改应用程序看到的默认路径,请在另一个堆栈交换站点this question上查看Unix & Linux的答案。