2015-05-04 60 views
14

我正在开发Node.js中的一个模块,我将npm链接到另一个项目node_modules文件夹中。我想在我的模块中更改文件后重新启动这个其他项目服务器。 Nodemon默认会忽略node_modules,但我认为我可以用nodemon --watch node_modules/my_module来覆盖它 - 但无法使其工作。如果我暂时从nodemons lib/config/defaults.js中删除node_modules,它可能会起作用,这可能证实问题与重写默认行为有关。如何使用Nodemon监控符号链接模块?

+0

自己碰到这个。我想使用forever.js,但它看起来像库实际上不支持发送日志输出到标准输出(在我看来这是一个打击者)。 –

+0

... aaaand我找到了解决方案。我想我应该事实上尝试过。 –

回答

2

使用nodemon 1.2.1,我能做到以下几点,以获得手表与NPM环节的工作:

$ nodemon --watch . --watch $(realpath node_modules/my_module) 

基本上......你看你所在的目录(您项目目录),然后指定一个手表到符号链接本身。默认情况下,nodemon忽略node_modules,因此明确指定手表可修复此问题。如果这不适合你,你可以尝试更新你的nodemon版本。

+0

这似乎不工作了,请参阅[此问题](https://github.com/remy/nodemon/issues/794); – Tamlyn

+0

@Tamlyn嘿 - 随时编辑我的答案,包括一个新的修复程序,如果存在。如果这是一个很好的答案,我可以制作这个社区维基,并将其开放以供编辑。 –

+0

刚刚在我运行'brew install coreutils'(macOS)后,我就开始工作了。否则,找不到“realpath”命令。最好分别运行'realpath node_modules/my_module',以确保它返回一些有意义的东西,然后才调用'nodemon ...'。 –