在sublime文本中,我在尝试验证JS时遇到以下错误。
[Errno 2] No such file or directory: 'node'
[cmd: ['node', '/Users/gurpreetsingh/Library/Application Support/Sublime Text 3/Packages/JSLint/linter.js', '--sloppy', '--indent', '2', '--node', '--nomen', '--vars', '--plusplus', '--stupid', '--todo', '/Users/gurpreetsingh/Documents/dev/aimia/infrastructure/endeavour-callcentre/endeavour-callcentre-web/src/main/webapp/js/modules/membervalidation.js']]
[dir: /Users/gurpreetsingh/Documents/dev/aimia/infrastructure/endeavour-callcentre/endeavour-callcentre-web/src/main/webapp/js/modules]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
[Finished]
//Additional Information
Node version :v0.10.13
which node: /usr/local/bin/node
echo $PATH:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin
答案 0 :(得分:19)
Sublime无法找到节点,因为正如其path
列表所示,它不会查找/usr/local/bin
。您需要修改设置以指向/usr/local/bin/node
,而不仅仅是node
,并且您将全部设置。
答案 1 :(得分:13)
我能够通过在(nodejs.org)下载和安装节点来获得节点工作,然后使用以下方法修改Sublime Text 2构建系统:
{
"cmd": ["/usr/local/bin/node", "$file", "$file_base_name"],
"working_dir": "${project_path:${folder}}",
"selector": "*.js"
}
答案 2 :(得分:4)
转到:
偏好设置>套餐设置> JSLint>高级构建设置
然后在安装时设置节点路径。如果您不知道,只需在终端中键入“which node”以找出正确的路径。
答案 3 :(得分:3)
您需要告诉JSLint包您的节点在哪里。以Mac OS X上的Sublime Text 2为例,您需要打开文件/Users/shawnzhu/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.sublime-build
并更新键cmd
的数组值的第一个元素,如下所示:
"/usr/local/bin/node"
然后保存此文件并重新运行Sublime文本
答案 4 :(得分:1)
仅供参考,如果您使用Sublime Text 2,有多种方法可以解决此问题:
您可以按照以下说明手动破解它(如果第一种方法不起作用):
vim ~/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.py
然后在第16行,您可以看到path
变量,如下所示:
if os.name == "posix":
path = "/usr/local/bin:" + os.environ['PATH']
else:
将您的路径添加到第一个字符串。例如如果您使用macports
安装节点:
path = "/opt/local/bin:/usr/local/bin:" + os.environ['PATH']
不要忘记删除
rm ~/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.pyc
位于同一目录中。