首页 > 解决方案 > 无法使用 node-dev 监视目录

问题描述

node-dev由于导致多个手表的问题, 我在开始时尝试仅查看特定目录;Error: watch /usr/src/app/node_modules/common-tags/lib/stripIndent/stripIndent.js ENOSPC

我尝试传递watch标志,但是该进程无法找到该模块;

node-dev --watch api app.js

它抛出以下错误:

Error: Cannot find module 'api' from '/usr/src/app'
    at resolveSync (/usr/src/app/node_modules/resolve/lib/sync.js:89:15)
    at module.exports (/usr/src/app/node_modules/node-dev/lib/resolve-main.js:4:10)
    at getConfig (/usr/src/app/node_modules/node-dev/lib/cfg.js:30:16)
    at module.exports (/usr/src/app/node_modules/node-dev/lib/cli.js:46:14)
    at Object.<anonymous> (/usr/src/app/node_modules/node-dev/bin/node-dev:11:5)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)

api目录存在于/usr/src/app. 我尝试使用相同的watch标志,nodemon它似乎可以工作,但它有自己的一组问题,并且在发生文件更改时崩溃。

我尝试将配置放入.node-dev.json,但没有任何影响。

{
  "watch": ["api"],
  "ignore": [
    "*.test.js",
    "assets/*",
    "coverage/*",
    "docs/*",
    "email_templates/*",
    "kubernetes/*",
    "logs/*",
    "node_modules/*",
    "queue/*",
    "script/*",
    "shared/*",
    "tasks/*",
    "test/*",
    "tests/*",
    "uitests/*",
    "views/*"
  ]
}

请注意,我无法修改fs.inotify.max_user_watches,因为 VM 是共享的,并且我无权运行系统命令。

任何帮助将不胜感激。

标签: node.jsnodemonhotswapnode-dev

解决方案


推荐阅读