2013-11-29 56 views
-1

任何引用任何全局模塊的require語句失敗。 模塊全局安裝(-g),命令行中的常規節點運行良好。 redis失敗,mongodb失敗等。 我沒有找到任何配置選項。 表示工作很好,但不是其他模塊。nodeclipse無法識別任何模塊

sudo npm install -g redis例如,nodeclipse找不到它。 節點命令行,工作正常。

與普通用戶一起運行。

+0

這些問題是模糊的。 「模塊失敗」是什麼意思?表達不清楚,只在一行。請更新答案並準確地寫下你做了什麼,看到了什麼,以及你的期望。 –

回答

0

你剛纔'npm install'這些模塊嗎?

在您的問題中提供更多信息,因爲無法分辨您的環境中有什麼不同。

+0

redis和mongo模塊,它們全局安裝 – donald

2

節點包含不同的模塊,也許人們會期望。 From the node docs:

如果傳遞給需要()的模塊標識符不是天然模塊,並且不與開始「/」,「../」,或「./」,則節點開始於父目錄並添加/ node_modules,並嘗試從該位置加載模塊。

如果在那裏沒有找到它,那麼它將移到父目錄,依此類推,直到達到樹的根。

因此,當使用-g選項調用,但該目錄不是由節點讀取,除非當前模塊也設在同一個目錄或子目錄是NPM並安裝到一個全球性的目錄,這會工作只要該另一個模塊也由npm -g安裝。

但是,如果啓動.js位於某個不同的目錄中,則此方案不起作用。

因此,我認爲爲了讓它起作用,請添加到npm安裝模塊(例如NODE_PATH =/usr/local/lib/node_modules)的NODE_PATH環境變量中。這可以從運行方式導航... - >運行配置 - >環境選項卡