Я использую PM2 для запуска и выполнения процесса узла на некоторое время, и он отлично работает, пока я не попытаюсь использовать babel.PM2 и babel всегда «Порт в использовании»
Я не уверен, в чем проблема, но когда я начинаю проект с babel, он не может прекратить показывать Port 3000 is already in use
.
Этот проект является копией другого. Они почти одинаковы, кроме scripts
в package.json
.
"scripts": {
"start": "npm run babel | node ./bin/www",
"babel": "./node_modules/.bin/babel server -d lib"
}
и оригинал намного проще
"scripts": {
"start": "node ./bin/www"
}
Я использую начать процесс run process.json
, и добавить "exec_interpreter": "babel-node"
в проекте с Бабелем.
Я также установил некоторые новые пакеты для проекта копирования, включая babel, babel-core, babel-loader, реагировать, реагировать, реагировать-hot-loader, webpack и webpack-dev-сервер. И я изменил код с ES5 на ES6, вот почему я использую babel (да, я пытаюсь использовать реакцию и переносить на ES6 на основе обычного экспресс-проекта)
Когда я перезагружаю свой Mac и запускаю оригинал проект без babel, все в порядке. Затем я останавливаю процесс и продолжаю запускать проект с помощью babel, он продолжает метать Port 3000 is already in use
.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Google 394 brick 14u IPv6 0x432e592f22d3b26b 0t0 TCP localhost:52261->localhost:hbci (CLOSE_WAIT)
Google 394 brick 16u IPv6 0x432e592f22d397ab 0t0 TCP localhost:52262->localhost:hbci (CLOSE_WAIT)
Google 394 brick 213u IPv6 0x432e592f246f87ab 0t0 TCP localhost:52264->localhost:hbci (CLOSE_WAIT)
node 1210 brick 13u IPv6 0x432e592f22d377ab 0t0 TCP *:hbci (LISTEN)
Я использую в оболочке lsof -i:3000
, это показывает, что есть процесс узла и 2-3 под названием Google процессы (я использую хром) использует порт. Даже я убил процесс, он снова появляется (с другим pid).
Я понятия не имею, в чем проблема.