Обновлено до версии 1.0.1, а затем до версии 1.0.4, и я не могу перезапустить сервер при изменении файла.
C:\wamp\www\DoLyfe>nodemon -V --dump server.js
5 Jan 20:56:41 - [nodemon] v1.0.4
5 Jan 20:56:41 - [nodemon] to restart at any time, enter `rs`
5 Jan 20:56:41 - [nodemon] ignoring: .git/* node_modules/**/node_modules/*
5 Jan 20:56:41 - [nodemon] watching: *.*
5 Jan 20:56:41 - [nodemon] watching extensions: js
--------------
{ run: false,
system: { noWatch: false, watchWorks: false },
required: false,
dirs: [ 'C:\\wamp\\www\\DoLyfe' ],
timeout: 1000,
options:
{ verbose: true,
dump: true,
script: 'server.js',
args: [],
ignore:
[ '.git/',
'node_modules/**/node_modules/',
re: /\.git/|node_modules/.*.*/node_modules// ],
watch: [ '*.*', re: /.*\..*/ ],
restartable: 'rs',
execMap: { py: 'python', rb: 'ruby' },
stdin: true,
execOptions:
{ script: 'server.js',
exec: 'node',
nodeArgs: undefined,
ext: 'js',
execArgs: [] },
ext: 'js',
monitor: [ '*.*', '!.git/*', '!node_modules/**/node_modules/*' ] },
load: [Function],
reset: [Function: reset],
lastStarted: 0,
loaded: [] }
--------------
OS: win32 x64
node: v0.10.22
nodemon: v1.0.4
cwd: C:\wamp\www\DoLyfe
command: node C:\Users\Alex\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon.js -V --dump server
.js
--------------
5 Jan 20:56:41 - [nodemon] exiting
Я изменяю и сохраняю server.js и другие файлы js во вложенных папках, и ничего не происходит (сервер не перезагружается, также тестируется с фактическим выводом страницы).
Подтверждено.
Дерьмо. В теме.
Исправлено исправление, просто проводя тесты на всех платформах (надеюсь, все будет хорошо!)
Исправлено и в npm под [email protected]
Обновился до версии 1.0.5, но все еще не работает:
C:\wamp\www\DoLyfe>nodemon -V --dump server.js
6 Jan 00:34:03 - [nodemon] v1.0.5
6 Jan 00:34:03 - [nodemon] to restart at any time, enter `rs`
6 Jan 00:34:03 - [nodemon] ignoring: .git/* node_modules/**/node_modules/*
6 Jan 00:34:03 - [nodemon] watching: *.*
6 Jan 00:34:03 - [nodemon] watching extensions: js
--------------
{ run: false,
system: { noWatch: false, watchWorks: false },
required: false,
dirs: [ 'C:\\wamp\\www\\DoLyfe' ],
timeout: 1000,
options:
{ verbose: true,
dump: true,
script: 'server.js',
args: [],
ignore:
[ '.git/',
'node_modules/**/node_modules/',
re: /\.git/|node_modules/.*.*/node_modules// ],
watch: [ '*.*', re: /.*\..*/ ],
restartable: 'rs',
execMap: { py: 'python', rb: 'ruby' },
stdin: true,
execOptions:
{ script: 'server.js',
exec: 'node',
nodeArgs: undefined,
ext: 'js',
execArgs: [] },
ext: 'js',
monitor: [ '*.*', '!.git/*', '!node_modules/**/node_modules/*' ] },
load: [Function],
reset: [Function: reset],
lastStarted: 0,
loaded: [] }
--------------
OS: win32 x64
node: v0.10.22
nodemon: v1.0.5
cwd: C:\wamp\www\DoLyfe
command: node C:\Users\Alex\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon.js -V --dump server
.js
--------------
6 Jan 00:34:03 - [nodemon] exiting
Примечание. Моя командная строка:
nodemon -V server.js
И файл находится в папке, в которую вводится эта команда.
Хорошо, поэтому я вижу из вашей конфигурации, что watchWorks: false
- когда это должно быть правдой ... вот что вызывает эту проблему.
Какая у вас ОС Windows? (Я тестировал на XP ... наверное, немного заниженный!) И на какой версии узла (я тестировал v0.10.23).
Не могли бы вы также попробовать это и прислать мне результат:
var fs = require('fs'),
crypto = require('crypto'),
file = 'test' + crypto.randomBytes(16).toString('hex');
console.log('watching', file);
fs.writeFileSync(file, 'ok');
setTimeout(function () {
fs.watch(file, { persistent: false }, function (event, filename) {
console.log('fs.watch worked', filename);
});
}, 1000);
fs.watchFile(file, function (a, b) {
console.log('watchFile worked');
})
setTimeout(function () {
fs.writeFileSync(file, 'ok1');
}, 2000);
Не с nodemon, а просто как "node script.js".
Привет,
Я тоже сталкиваюсь с этой проблемой. Я использую Windows 8.1 (x64), Node 0.10.24.
Результат этой команды для меня следующий:
>node test.js
watching test5aa09b09f6618bf5fd3c3d53fba9bd1f
fs.watch worked test5aa09b09f6618bf5fd3c3d53fba9bd1f
fs.watch worked test5aa09b09f6618bf5fd3c3d53fba9bd1f
watchFile worked
Если я открою сгенерированный файл и добавлю к нему что-нибудь, то снова получу те же сообщения.
Благодаря!
Можете ли вы также включить вывод nodemon --dump
чтобы я мог проверить ваш
config.
В воскресенье, 5 января 2014 г., gaborpro писал:
Привет,
Я тоже сталкиваюсь с этой проблемой. Я использую Windows 8.1 (x64), Node 0.10.24.
Результат этой команды для меня следующий:
узел test.js
смотрю test5aa09b09f6618bf5fd3c3d53fba9bd1f
fs.watch работал test5aa09b09f6618bf5fd3c3d53fba9bd1f
fs.watch работал test5aa09b09f6618bf5fd3c3d53fba9bd1f
watchFile работалЕсли я открою сгенерированный файл и что-нибудь добавлю к нему, то получу то же самое
сообщения снова.Благодаря!
-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/remy/nodemon/issues/252#issuecomment -31619873
.
- Реми
Сейчас я работаю, к сожалению, у меня нет доступа к домашней машине. Вечером могу проверить.
Если это поможет, я использую конфигурационный файл по умолчанию, который поставляется с npm.
@remy lol,
Я нахожусь на Win 8 x64
, пробовал с Node v0.10.22
и также обновился до v0.10.24
(кстати, версия узла находится в выводе --dump
).
Вот результат вашего скрипта:
watching test808f642ac04ce787747d5dd5f0581f2a
fs.watch worked test808f642ac04ce787747d5dd5f0581f2a
fs.watch worked test808f642ac04ce787747d5dd5f0581f2a
watchFile worked
--dump
вывод с узлом v0.10.24
:
C:\wamp\www\DoLyfe>nodemon -V --dump server.js
6 Jan 14:54:38 - [nodemon] v1.0.5
6 Jan 14:54:38 - [nodemon] to restart at any time, enter `rs`
6 Jan 14:54:38 - [nodemon] ignoring: .git/* node_modules/**/node_modules/*
6 Jan 14:54:38 - [nodemon] watching: *.*
6 Jan 14:54:38 - [nodemon] watching extensions: js
--------------
{ run: false,
system: { noWatch: false, watchWorks: false },
required: false,
dirs: [ 'C:\\wamp\\www\\DoLyfe' ],
timeout: 1000,
options:
{ verbose: true,
dump: true,
script: 'server.js',
args: [],
ignore:
[ '.git/',
'node_modules/**/node_modules/',
re: /\.git/|node_modules/.*.*/node_modules// ],
watch: [ '*.*', re: /.*\..*/ ],
restartable: 'rs',
execMap: { py: 'python', rb: 'ruby' },
stdin: true,
execOptions:
{ script: 'server.js',
exec: 'node',
nodeArgs: undefined,
ext: 'js',
execArgs: [] },
ext: 'js',
monitor: [ '*.*', '!.git/*', '!node_modules/**/node_modules/*' ] },
load: [Function],
reset: [Function: reset],
lastStarted: 0,
loaded: [] }
--------------
OS: win32 x64
node: v0.10.24
nodemon: v1.0.5
cwd: C:\wamp\www\DoLyfe
command: node C:\Users\Alex\AppData\Roaming\npm\node_modules\nodemon\bin\nodemon.js -V --dump server
.js
--------------
6 Jan 14:54:38 - [nodemon] exiting
@alexilyaev , это здорово - приветствую детали (и да, я забыл, что версия узла была в дампе!).
Это странно, потому что простой тест сработал для вас (чтобы проверить поддержку часов), но параметр конфигурации system.watchWorks имеет значение false.
Не могли бы вы присоединиться ко мне на irc-канале #nodemon на freenode.net? Я хотел бы опробовать несколько скриптов, чтобы попытаться проверить и исправить то, что происходит.
Я только что запустил свою виртуальную машину Windows 8, и это говорит о том, что у нее тоже system.watchWorks = true
- так что это странно.
(и теперь я только что оживил свой ноутбук с Windows, и _even_ это верно для watchWorks, но явно не для некоторых из вас, поэтому я хотел бы разобрать его для вас!)
У меня такая же проблема, буду рад помочь если нужно что то попробовать
Релиз скоро выйдет.
Исправлено, подтверждено с помощью этого скрипта: https://gist.github.com/remy/8283715
Подтверждено с помощью 1.0.6
.
Благодаря!
Просто вопрос, выполнение Git запускает эти строки с помощью -V
cmd.
6 Jan 20:59:36 - [nodemon] files triggering change check: .git
6 Jan 20:59:36 - [nodemon] changes after filters (before/after): 1/0
6 Jan 20:59:36 - [nodemon] files triggering change check: .git
6 Jan 20:59:36 - [nodemon] changes after filters (before/after): 1/0
Они не запускают перезапуск, но мне интересно, почему они запускаются, если .git
входит в список игнорирования?
{
"ext": "js json",
"ignore": [
".git",
"app",
"config",
"logs",
"node_modules",
"scripts",
"test"
]
}
То же самое для файлов html
которые находятся непосредственно в игнорируемой папке (например, app\index.html
), но не на более глубоких уровнях.
И еще один быстрый: могу ли я сказать Nodemon отслеживать только 1 или несколько файлов (например, server.js
) в каталоге, который он запускает?
Значит, мне не придется игнорировать каждую папку в этом корневом каталоге или помещать server.js
в подкаталог?
Если .git указан при проверке триггера - вы правы, его следует полностью игнорировать, исходя из того, что у вас есть в вашем игнорировании. Он каким-то образом проходит проверку (на этой неделе я снова протестирую и посмотрю, могу ли я что-то сделать, чтобы подавить это.
Если вы хотите, чтобы он перезапускался только для одного файла ( server.js
я думаю, это то, что вы говорите), просто вставьте это в часы:
{
"watch": ["server.js"]
}
Теперь nodemon перезапустится, только если изменится server.js
.
Отлично, это сработало.
Опять же, все остальные сохранения файлов запускают эти change check
строки, даже если он должен прослушивать только один файл.
Глядя на watch.js
, я полагаю, что функция ignoredFilter
должна быть вызвана перед вызовом filterAndRestart
, где и выводятся эти строки.
Спасибо!
@remy Кстати, в чем разница между вашей
То есть, почему в ваших тестах это сработало, а у нас не сработало?
Я действительно не знаю, в чем разница в настройке (может быть, потому что
файловая система на моей виртуальной машине находится в Mac OS, и файловая система каким-то образом
разные, я не знаю), но я вижу из --dump, что
config.system.watchWorks - ложь, а моя - правда.
Но когда я тестировал сегодня вечером, watchWorks оказался ложным, что
почему я смог полностью протестировать это исправление, потому что я смог воспроизвести
оформить правильно.
7 января 2014 г. в 22:18 Алексей Ильяев [email protected] написал:
@remy https://github.com/remy Кстати, в чем разница между
ты Win 8 ВМ и наши сетапы?То есть, почему в ваших тестах это сработало, а у нас не сработало?
-
Ответьте на это письмо напрямую или просмотрите его на Gi tHubhttps: //github.com/remy/nodemon/issues/252#issuecomment -31786025
.
Привет, @remy , я работаю над API REST с машинописным текстом и использую nodemon для перезагрузки сервера при каждом изменении. Он отлично работает в системах unix, но у других участников есть окна, и он не работает. Ты хоть представляешь, что происходит?
Спасибо.
Не с той информацией, которую вы предложили. Может быть, заставить их использовать окна
платформа bash.
Пт, 18 ноября 2016 г., 22:26 raansilrey, [email protected] написал:
Привет @remy https://github.com/remy , я работаю над API REST с
машинописный текст и я использую nodemon для перезагрузки моего сервера при каждом изменении. Оно работает
отлично работает в системах unix, но у других сотрудников есть окна, и
не работает. Ты хоть представляешь, что происходит?Спасибо.
-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/remy/nodemon/issues/252#issuecomment -261658459 или отключить звук
нить
https://github.com/notifications/unsubscribe-auth/AAA1hK1SUmJVf-J4wZTgVLBEz1cc_Yz5ks5q_iYEgaJpZM4BXgow
.
У меня была аналогичная проблема. Я использую Windows 10, и nodemon не перезапускал мою веб-службу, когда я вносил изменения в код. По какой-то причине узел был установлен в C: \ Program Files (x86). Каждый раз, когда я пытался сделать обновление, он жаловался, что мне нужны административные привилегии. Наконец, я просто переместил каталог nodejs в корень моего диска c; \. Теперь все работает нормально, независимо от того, используете ли вы линию CMD или PowerShell
Та же проблема. Linux Mint 18, 64-разрядная версия. Пытался запустить тиддливики-сервер. Вот дамп Nodemon
[nodemon]
1.11.0
[nodemon] для перезапуска в любое время введитеrs
[nodemon] Наблюдение:.
узел: v6.9.1
nodemon: 1.11.0
команда: /home/who/.nvm/versions/node/v6.9.1/bin/node /home/who/.nvm/versions/node/v6.9.1/bin/nodemon --dump
cwd: / home / who / yaah / IldyОС: Linux x64
{run: false,
система: {cwd: '/ home / who / yaah / Ildy'},
требуется: false,
dirs: ['/ home / who / yaah / Ildy'],
таймаут: 1000,
параметры:
{дамп: правда,
игнорировать:
['.git',
'.nyc_output',
'.sass-cache',
'bower_components',
'покрытие',
'node_modules',
re: /.git|.nyc_output|.sass-cache|bower_components|coverage|node_modules/],
смотреть: [' . ', re: /. .. /],
ignoreRoot:
['.git',
'.nyc_output',
'.sass-cache',
'bower_components',
'покрытие',
'node_modules'],
перезапускаемый: 'rs',
цвета: правда,
execMap: {py: 'python', rb: 'ruby'},
stdin: правда,
runOnChangeOnly: false,
подробный: ложь,
stdout: правда,
execOptions:
{script: null,
exec: 'узел',
аргументы: [],
scriptPosition: нуль,
nodeArgs: undefined,
ext: 'js, json',
env: {},
execArgs: []},
монитор:
[' . ',
'! .git',
'! .nyc_output',
'! .sass-cache',
'! bower_components',
'! охват',
'! node_modules']},
сигнал: 'SIGUSR2',
load: [Функция],
сброс: [Функция: сброс],
lastStarted: 0,
загружено: [],
watchInterval: null,команда: {raw: {исполняемый файл: 'узел', аргументы: []}, строка: 'узел'}}
Для информации; Сегодня у меня была такая же проблема с nodemon 1.11.0 и Node v7.10.0. Исправлено, удалив папку .build
в моем корневом каталоге. Каталог .build
содержал версию моего дерева исходного кода, переведенную через babel. После удаления все снова работало нормально.
Была такая же проблема, но я предполагаю, что причиной ее было то, что родительская папка скрипта имела префикс .
(точка).
Не копайте глубже, почему nodemon не перезапускается, когда родительская папка имеет .
в имени папки.
Я удалил префикс .
и все снова
Использование -L (устаревший вариант) сработало для меня в бродяге
Без него не работает
@iemadk Спасибо за это, это
Самый полезный комментарий