2014-09-22 50 views
0

我剛安裝Sublime-jshint(以及必要的node.js + jshint),但得到這個錯誤,當我嘗試從ST2中調用JSHint:

[Errno 2] No such file or directory 
[cmd: [u'jshint', u'PATH-TO-THE-JS-FILE-I-AM-LINTING', u'--reporter', u'/home/cmg/.config/sublime-text-2/Packages/JSHint/reporter.js']] 
[dir: DIR-MY-JS-FILE-IS-IN] 
[path: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/cmg/bin] 
[Finished] 

在給定的路徑中的最後一項是的家目錄我的用戶(釐米),所以它被定製莫名其妙地 ...但我不記得如何,所以我不知道如何添加我需要的目錄(~/node_modules/.bin)。

我已經將它添加到我的shell中的$ PATH(通過.bashrc和.bash_profile),但ST2並沒有把它拿起來。我在Ubuntu 14.04上找到的所有可用的東西都是通過Google在這個主題上找到的,或者是OS X特有的或者與ST的構建系統相關的。

回答

0

打開/etc/profile的崇高(使用sudo),並在最底部添加以下行:

export PATH=/home/cmg/node_modules/.bin:$PATH 

並保存文件。完全重新啓動,並且您的PATH應該被更新。

+0

謝謝。我的意思是在這個問題上注意 - 目標是在我的$ PATH中,但ST2並沒有採用它。 – 2014-09-23 16:55:07

+0

另外 - 如果我通過'subl'命令啓動ST,它會從我的shell獲取$ PATH。但我通常通過Unity啓動器或Kupfer啓動它。 – 2014-09-23 18:29:51

+0

另外設置PATH桌面快捷方式:http://stackoverflow.com/questions/25994666/setting-environment-variables-for-sublime-text-on-osx-desktop/25996724#25996724 – 2014-09-25 13:06:47

1

基本上,jshint軟件包在內部使用的exec命令允許您設置/擴展生成的子流程的PATH。 (docs

該軟件包實際上在OSX上使用了這個路徑參數,但它有硬編碼(當我重寫了命令,因爲之前它太可怕了,所以我部分地犯了這個錯誤)。它應該允許設置指定你的jshint可執行文件的路徑,所以我建議你爲此創建一個問題。

我不知道爲什麼ST不會從別的地方拿起你的PATH,因爲我對此沒有什麼經驗。

+0

我以前沒見過你,歡迎光臨! – MattDMo 2014-09-25 15:14:39

+0

謝謝。有人在IRC頻道中鏈接了這個主題。雖然我不積極瀏覽問題。 – FichteFoll 2014-10-02 14:49:41