2014-12-02 54 views
5

grunt任務似乎運行完全正常,但我每次運行它的時候,我得到這個錯誤:jshint錯誤:無法找到模塊「下劃線」

Loading "jshint.js" tasks...ERROR 
>> Error: Cannot find module 'underscore' 

有沒有辦法找出原因這是怎麼回事?我可以看到/grunt-contrib-jshint目錄在/node_modules目錄中。是否有任何理由找不到underscore模塊?我試過運行npm install,但是當我運行grunt時,我仍然遇到同樣的錯誤。

任何想法?任何幫助表示讚賞。

+1

當你找不到模塊x錯誤時,有時候可能會幫助你刪除整個'npm_modules'文件夾,然後再次運行'npm install'。有時,在最初的'npm install'上,它可能無法獲得一個包的一個依賴項,並且當你再次運行'npm install'時它不會嘗試再次獲取它,因爲它獲得了所有你想要的包,只是可能不是所有這些軟件包的依賴關係。 – jValdron 2014-12-02 14:22:01

+0

@jValdron感謝您的提示。這很有用! – realph 2014-12-02 14:25:16

+0

已發佈回答,這樣你可以接受它,並「關閉」這個問題:) – jValdron 2014-12-02 14:28:15

回答

17

當您有cannot find module x errors時,有時可能會幫助您刪除整個npm_modules文件夾,並再次運行npm install

有時候,初始npm install,可能未能獲得一個包一個依賴,它不會嘗試,當你再次運行npm install再次得到它,因爲它得到了所有的包想要的,只是可能不是所有這些軟件包的依賴關係。

+0

同意,爲我工作。我得到了類似的錯誤: '加載「jshint.js」任務...錯誤 >>錯誤:找不到模塊'cli'' – 2015-07-08 13:00:25

4

你可以使用npm update 我測試這個命令和這個答案。

+0

它應該是'npm update'而不是'upm update' – bla0009 2016-06-30 13:10:46