可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
On sublime text I'm getting following error while trying to validate 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
回答1:
Sublime can't find node, because as its path
listing shows, it's not looking in /usr/local/bin
. You need to modify the settings to point to /usr/local/bin/node
, not just node
, and you'll be all set.
回答2:
I was able to get node working by downloading and installing node at (nodejs.org), then modifying the Sublime Text 2 build system using this:
{ "cmd": ["/usr/local/bin/node", "$file", "$file_base_name"], "working_dir": "${project_path:${folder}}", "selector": "*.js" }
回答3:
Go to:
Preferences > Package Settings > JSLint > Advanced Build Settings
Then set the node path as you have it installed. If you don't know, just type "which node" in the terminal to find out the correct path.
回答4:
You need to tell JSLint package where your node is. Take Sublime Text 2 on Mac OS X for example, you need to open file /Users/shawnzhu/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.sublime-build
and update the first element of the array value of the key cmd
like this:
"/usr/local/bin/node"
Then save this file and re-run your Sublime text
回答5:
Just for reference, If you are using Sublime Text 2, there are multiple ways to fix this problem:
- You can see the last paragraph in the official documentation.
You can manually hack it by following these instructions (if the first method didn't work):
vim ~/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.py
then in line 16 you can see the path
variable like this:
if os.name == "posix": path = "/usr/local/bin:" + os.environ['PATH'] else:
prepend your path to the first string. e.g. if you are using macports
to install your node:
path = "/opt/local/bin:/usr/local/bin:" + os.environ['PATH']
Don't forget to remove
rm ~/Library/Application Support/Sublime Text 2/Packages/JSLint/JSLint.pyc
that is in the same directory.