Как узнать, какому пакету в `package.json` нужна конкретная версия другого требуемого пакета?

#nuxt.js #package.json

#nuxt.js #package.json

Вопрос:

При запуске npm run dev с Nuxt я получаю предупреждение и кучу ошибок:

 WARN  webpack@5.65.0 is installed but ^4.46.0 is expected 
 

Все исправляется после добавления webpack в мой package.json:

 "devDependencies": {
  "webpack": "^4.46.0",
  ...
}
 

Однако, как узнать, какому пакету на package.json самом деле нужна эта конкретная версия webpack? И почему этот пакет не устанавливает такую необходимую зависимость?

Комментарии:

1. Самый простой способ увидеть зависимости пакетов — запустить npm list --all , он напечатает дерево зависимостей в терминале. Если вы хотите что-то более красивое и простое для просмотра и анализа, вы можете использовать npm-tree (отказ от ответственности: Я автор)

2. Я обычно проверяю yarn.lock файл для этого. У вас есть 2 пакета, которые несовместимы друг с другом. Поскольку Nuxt2 доступен только с Webpack4, а здесь вы используете пакет, основанный на Webpack5.

3. @tromgy очень полезный и приятный пакет!