Ubuntu / Unix && MacOS
Мой Metro Bundler завис, и было запущено множество процессов узлов, но у меня не было никаких других разработок, кроме react-native, поэтому я запустил:
$ killall -9 node
Metro Bundler по умолчанию работает через узел на порту 8081, и иногда он может сталкиваться с проблемами, из-за которых он застревает (обычно из-за быстрого нажатия CTRL+ Sпри включенной горячей перезагрузке). Если вы нажмете CTRL+, Cчтобы остановить react-native run-androidпроцесс, вам внезапно придется плохо, потому что react-native-run-androidвы застрянете на:
Scanning folders for symlinks in /home/poop/dev/some-app/node_modules (41ms)
Исправить:
$ killall -9 node
$ react-native run-android
Примечание: если вы разрабатываете другие приложения в то время, завершение всех процессов узла может прервать их или любые запущенные вами службы на основе узлов, поэтому помните о широком характере killall -9. Если у вас нет базы данных или приложения на основе узлов или вы не против перезапустить их вручную, тогда все будет в порядке.
Причина, по которой я оставляю этот подробный ответ на этот наполовину несвязанный вопрос, заключается в том, что я являюсь решением распространенной наполовину связанной проблемы, для решения которой, к сожалению, требуется 2 шага, но, к счастью, требуется только 2 шага, чтобы вернуться к работе.
Если вы хотите удалить хирургическим путем именно мусор Metro Bundler на порту 8081, выполните действия, указанные в ответе RC_02 , а именно:
$ sudo lsof -i :8081
$ kill -9 23583
(где 23583 - идентификатор процесса)