Пакеты не распознают текущую версию узла при установке form-js

Я пытаюсь npm install пакеты формы form-js bpmn.io, и в документации указано, что требования — это node 16 и npm 8. Поэтому я использовал nvm, чтобы изменить версию моего узла и npm на необходимые. Сейчас я использую node -v и npm -v и их результаты:

v16.20.2
8.19.4

Но после запуска npm install кажется, что мой узел все еще равен 12:

npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '[email protected]',
npm WARN EBADENGINE   required: { node: '>=16 || 14 >=14.17' },
npm WARN EBADENGINE   current: { node: 'v12.22.9', npm: '8.19.4' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '[email protected]',
npm WARN EBADENGINE   required: { node: '>= 16' },
npm WARN EBADENGINE   current: { node: 'v12.22.9', npm: '8.19.4' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '[email protected]',
npm WARN EBADENGINE   required: { node: '>=14' },
npm WARN EBADENGINE   current: { node: 'v12.22.9', npm: '8.19.4' }
npm WARN EBADENGINE }

Я попробовал очистить кеш после переключения версии:

npm cache clean --force
rm -rf node_modules
rm package-lock.json

Я также попытался убедиться, что переменная среды PATH правильно установлена ​​для использования версии Node, установленной nvm:

export NVM_DIR = "$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" bash_completion

Но все равно даже после перезагрузки такое ощущение, что что-то не так. Вот остальные ошибки на случай, если кто-то поймет, что не так:

npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '[email protected]',
npm WARN EBADENGINE   required: { node: '>=14' },
npm WARN EBADENGINE   current: { node: 'v12.22.9', npm: '8.19.4' }
npm WARN EBADENGINE }
npm WARN deprecated [email protected]: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated [email protected]: This package is no longer supported. Please use @npmcli/package-json instead.
npm WARN deprecated [email protected]: This package is no longer supported. Please use @npmcli/package-json instead.
npm WARN deprecated [email protected]: This package is no longer supported.
npm WARN deprecated [email protected]: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated [email protected]: This package is no longer supported.
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: Glob versions prior to v9 are no longer supported
npm WARN deprecated [email protected]: This package is no longer supported.
npm ERR! code 1
npm ERR! path /home/okaeiz/Camunda/form-js/node_modules/nx
npm ERR! command failed
npm ERR! command sh -c -- node ./bin/post-install
npm ERR! /home/okaeiz/Camunda/form-js/node_modules/nx/src/project-graph/project-graph.js:119
npm ERR!         ...(projectConfigurationsError?.errors ?? []),
npm ERR!                                        ^
npm ERR!
npm ERR! SyntaxError: Unexpected token '.'
npm ERR!     at wrapSafe (internal/modules/cjs/loader.js:915:16)
npm ERR!     at Module._compile (internal/modules/cjs/loader.js:963:27)
npm ERR!     at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
npm ERR!     at Module.load (internal/modules/cjs/loader.js:863:32)
npm ERR!     at Function.Module._load (internal/modules/cjs/loader.js:708:14)
npm ERR!     at Module.require (internal/modules/cjs/loader.js:887:19)
npm ERR!     at require (internal/modules/cjs/helpers.js:74:18)
npm ERR!     at Object.<anonymous> (/home/okaeiz/Camunda/form-js/node_modules/nx/bin/post-install.js:3:25)
npm ERR!     at Module._compile (internal/modules/cjs/loader.js:999:30)
npm ERR!     at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2024-06-06T08_08_02_495Z-debug-0.log

Я думаю, что узел NVM не использовался. Вы что-то пропустили в настройке NVM? Каков результат запуска npm config get prefix в вашем терминале? И что возвращает бег which npm.

Oluwafemi Sule 06.06.2024 11:02

@OluwafemiSule Результатом npm config get prefix является /home/okaeiz/.nvm/versions/node/v16.20.2. И вывод which npm равен /home/okaeiz/.nvm/versions/node/v16.20.2/bin/npm, что кажется нормальным. Но установка продолжает давать сбой.

okaeiz 06.06.2024 11:40

Что дает nvm current?

Oluwafemi Sule 07.06.2024 22:15

@OluwafemiSule Команда nvm current дает v16.20.2

okaeiz 08.06.2024 07:39

Я только что проверил эту проблему на другой машине. Он по-прежнему предполагает, что я использую узел v12!

okaeiz 08.06.2024 07:55
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
5
1 628
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

После бесчисленных часов попыток вытащить волосы я обнаружил, что это проблема с соединением. Я попробовал запустить npm install при подключении к прокси, и пакеты были успешно установлены.

Что касается предупреждений об устаревании и несовместимости Node и npm, я понял, что это несущественные ошибки, и их можно смело игнорировать.

Другие вопросы по теме