簡體   English   中英

如何從 WebStorm 中運行 nodemon?

[英]How can I run nodemon from within WebStorm?

我想在 WebStorm IDE(版本 7)中使用nodemon 當其中一個源文件發生更改時,Nodemon 監視我的源文件夾中的一個或多個文件並重新啟動節點進程(在本例中為 Express 服務器)。

如何配置 WebStorm 在Run Configuration中使用nodemon ,以便節點進程自動重啟?

沒有nodemon ,我在 WebStorm 中使用以下配置,但每當我更改源文件中的某些內容時都必須重新啟動節點進程:

  • 節點解釋器: /usr/local/bin/node
  • 工作目錄: /Users/foo/test
  • JavaScript 文件: server.js

這會導致在指定目錄中運行node server.js的運行配置。

在命令行中,我可以使用以下命令來使用nodemon來監視文件更改:項目目錄中的nodemon server.js

我需要如何更改 WebStorm 配置以便它也使用nodemon

看起來不再需要--exec的解決方法,至少在使用最新版本的nodemon和 Webstorm 7 或 8 時是這樣。

您所要做的就是通過在控制台中運行which nodemon (例如/usr/local/bin/nodemon )在“節點參數”下獲取其路徑來指定nodemon的路徑:

使用 nodemon 進行 Webstorm

@Bela Clark,感謝您的確認。

這是 Windows 解決方案

您可以直接使用 nodemon.cmd 而不是 node ,例如:

Node interpreter : C:\MyPath\To\nodemon.cmd
Node parameters : /*Empty for me*/
Node WorkingDirectoy : C:\Users\MyUserName\Desktop\DirectoryContainingMyIndex.js
JavaScriptFile : app\index.js /*or just index.js depending on your config*/

然后:

在此處輸入圖片說明

希望它會幫助你。

要安裝nodemon ,請使用以下命令(如果需要,請使用sudo以 root 權限運行安裝:

npm install -g nodemon

這將在您的機器上全局安裝nodemon

然后,在您的 WebStorm Run Configuration 中,添加以下內容,保持其他所有內容不變:

  • 節點參數: /usr/local/bin/nodemon --exec /usr/local/bin/node

這將指示節點解釋器使用以下命令行執行nodemon腳本: node /usr/local/bin/nodemon --exec /usr/local/bin/node server.js

--exec部分很重要,因為執行將失敗並顯示以下錯誤:

/usr/local/bin/node /usr/local/bin/nodemon server.js
4 Oct 13:56:50 - [nodemon] v0.7.10
4 Oct 13:56:50 - [nodemon] to restart at any time, enter `rs`
4 Oct 13:56:50 - [nodemon] watching: /Users/foo/test
execvp(): No such file or directory
4 Oct 13:56:50 - [nodemon] starting `node server.js`
4 Oct 13:56:50 - [nodemon] exception in nodemon killing node
Error: spawn ENOENT
    at errnoException (child_process.js:980:11)
    at Process.ChildProcess._handle.onexit (child_process.js:771:34)

該錯誤似乎是由 WebStorm 沒有在其路徑上看到node可執行文件引起的。

對此的修復是使用--exec /usr/local/bin/node參數指定node可執行文件的位置。

使用這些設置, nodemon在從 WebStorm運行配置運行時可以正常工作。

同樣的技巧可能必須與一些類似於nodemon的工具一起使用,例如node-supervisor

我在 Windows 上,對我來說沒有與 nodemon 一起工作(不知道為什么),但是來自 Jetbrains 的人建議與主管一起嘗試:

  1. 我安裝了主管: npm install supervisor -g

  2. 然后找到supervisor安裝在哪里,對我來說是在: C:\\Users\\AlinC\\AppData\\Roaming\\npm\\node_modules\\supervisor\\lib\\cli-wrapper.js –no-restart-on error

  3. 我回到 Intellij:編輯配置 -> 節點參數 -> 並添加:C:\\Users\\AlinC\\AppData\\Roaming\\npm\\node_modules\\supervisor\\lib\\cli-wrapper.js –no-restart-on error

編輯配置

節點參數

對於那些對 Windows 10 中的解決方案感興趣的人,這是我的配置。 它不顯示“終止批處理”的東西並且完美運行。

在此處輸入圖片說明

您按下調試一次,然后您可以保存更改文件,服務器將在調試模式下重新啟動。 所有剎車點都運行良好

對於 Windows 用戶設置:

節點解釋器:node.exe 的路徑,即 c:\\program files\\node\\node.exe

節點參數:C:\\Users\\YOURUSER\\AppData\\Roaming\\npm\\node_modules\\nodemon\\bin\\nodemon.js

您還可以使其與 nvm 一起使用,並且調試仍然有效。

使用 Node.js 8.1.0 和 Webstorm 2017.2 進行測試

首先確保您使用的是正確的版本(在我的情況下為 v8.1.0)並全局安裝 nodemon -

nvm use v8.1.0
npm install -g nodemon

然后,打開運行/調試配置並使用正確的節點解釋器創建一個新配置。

節點參數應該是:

MAC

/Users/[YOUR_USER]/.nvm/versions/node/v8.1.0/bin/nodemon --inspect=3001

LINUX

/usr/local/nvm/versions/node/v8.1.0/bin/nodemon --inspect=3001

以響應方式保存和調試 :)

Node.js nodemon webstorm 調試

這是在 Windows 7 + WebStorm 8.0.4 上適用於我的配置。 如果我將 nodemon.cmd 作為節點解釋器,我會不斷收到“終止批處理作業(是/否)?”。

Windows 上的 Nodemon + Webstorm

如果您像全局庫一樣安裝了 nodemon,只需在節點參數中設置:

C:\\Users\\${yourUser}\\AppData\\Roaming\\npm\\node_modules\\nodemon\\bin\\nodemon.js

webstorm中的nodemon

這是唯一對我有用的東西:

  1. 添加一個新的 package.json 節點運行腳本命令:

在此處輸入圖片說明

  1. 創建NPM CONFIG (不是節點配置)
  2. 選擇“start-watch”作為命令

在此處輸入圖片說明

對我來說,這適用於調試/斷點,沒有問題或額外的麻煩。

其中一些答案似乎僅適用於 Mac。 對於 Windows,此配置似乎有效(我在 Windows 7 上的用戶名是 denman)。

在此處輸入圖片說明

main.js 是我的 Express 應用程序的起點文件。

只需向package.json添加名為 nodemon 的新腳本(或選擇您自己的名稱)

"scripts": {
  ...
  "nodemon": "nodemon ./bin/www"
}

然后轉到運行/調試配置並添加npm配置。 設置

  • 命令運行
  • nodemon ”的腳本(您在 package.json 中選擇的名稱)

例子

  1. 執行 npm install nodmemon -g
  2. 僅將節點的路徑更改為 nodemon.cmd,在我的情況下 (C:\\Users\\Rohit Taneja\\AppData\\Roaming\\npm\\nodemon.cmd),在安裝完 nodemon 后,您還將獲得此路徑。

  3. 你很高興去

每@bernhardw 評論,因為這是我的答案 -

所有需要的是node parameters下的/usr/local/bin/nodemon當它在更改時重新啟動時適用於運行和調試,使用斷點調試不起作用。

獎勵:添加 -e 以獲得更多擴展,例如/usr/local/bin/nodemon -e js,html,jade

(操作系統 10.10.5,紅寶石 7.1.4)

HTH

npm install -g nodemon

1* goto run->Edit Configurations->Press'+' at left corner and choose Node.js

2* Select Node.js and Press '+' 

3* Name as Nodemon, add path in javaScript file: C:\Users\Your_User_Name\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon.js

4* Click Apply and Ok

5* Run the Nodemon

在此處輸入圖片說明 在此處輸入圖片說明

package.json 中的腳本: "start": "nodemon --inspect -r babel-register src",

第一張圖:運行調試,它將啟動

第二張圖片:附加到現有的運行節點設置 在此處輸入圖片說明

這是對我遇到的錯誤的修復...

如果您使用的是 Windows + NodeJS + nodemon。 使用 IntelliJ - 運行配置。

ERROR: starting inspector on failed: address already in use

當我使用 nodemon 1.19.1 版時,出現錯誤。 當我使用 nodemon 1.18.11 版時,它可以工作!

祝你好運...

我在 mac 上有一個開發項目,正如 OdkoPP 指出的那樣,我讓它工作了

"scripts": {
"build": "tsc",
"dev": "nodemon src/index.ts --exec ts-node"
},

運行/調試配置 npm: 運行/調試配置 npm

這就是我跑步的方式

  1. 安裝 nodemon package

    npm install -g nodemon # 或者使用 yarn: yarn global add nodemon

  2. 從 Webstorm 終端,運行

    nodemon index.js

這就是它在終端中顯示運行的方式

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM