Ошибка Npm неподдерживаемая платформа для fsEvents при развертывании в Azure
Когда я запускаю npm install, я получаю эту ошибку:
npm ERR! code EBADPLATFORM npm ERR! notsup Unsupported platform for
fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current:
{"os":"win32","arch":"x64"}) npm ERR! notsup Valid OS: darwin npm
ERR! notsup Valid Arch: any npm ERR! notsup Actual OS: win32 npm
ERR! notsup Actual Arch: x64
Это было задано здесь, но принятый ответ, что это необязательно, не работает для меня, так как я не могу опубликовать в Azure, так как установка npm не удалась.
версия npm: 5.6.0
Я пытался:
npm install --no-optional
10 ответов
Npm i -f не кажется хорошей идеей...
Вместо этого добавьте fsevents к необязательным зависимостям (если fsevents есть в вашем package.json):
"optionalDependencies": {
"fsevents": "^2.0.7"
}
@ Аарон прав. Это не удавалось, когда я запускал npm install из maven-frontend-plugin.
Я решил проблему с помощью команды npm i -f
(принудительная установка npm)
fsevents - это модуль только для OS X, его нельзя установить в Windows.
Fsevents нужен только если вы строите на Mac. Если вы развертываете Ubuntu, Windows и т. Д., Это не нужно.
См. Здесь специфическая зависимость ОС npm package.json, которая читает,
npm package.json поддерживает ключ ОС,
а также optionalDependencies
os можно использовать, чтобы указать, в какой ОС можно установить модуль. optionalDependencies - это зависимости модулей, которые, если они не могут быть установлены, npm пропускает их и продолжает установку.
Любой из них будет работать. Я предпочитаю добавлять в корневой объект моего package.json следующее:
"optionalDependencies": {
"fsevents": "^2.1.2",
},
Это не имеет ничего общего с Дарвином или Windows . Возможно, вы установили Angular, но путь к системной переменной не обновляется соответствующим образом.
Получите место установки ng из вашей системы, например, (C: \ Users..... \ AppData \ Roaming \ npm), и добавьте в конце путь к системной переменной.
Теперь перейдите в Cmd -> введите ng-v для Angular 6 (версия ng v или ng для Angular 7).
Откройте "package.jason", затем удалите "fsevents" в "зависимости".
"dependencies": {"fsevents": "1.2.4"}
затем запустите "npm i" и после этого "npm Audit Fix Fix"
В моем случае по какой-то странной причине я обнаружил изменения в package-lock.json, которые произошли после запуска npm install и npm build. После восстановления изменений у меня пропала ошибка
Для меня это сработало без труда в Windows:
Перейдите в файл проекта "package.lock.json". Нажмите "Ctrl+F" (чтобы включить поиск по ключевым словам). Введите "darwin" Везде, где в файле написано "darwin", измените его на "win32". Перезагрузите код VS, и вы должны будьте готовы идти.
добавь это работает для меня
"main": "server.js",
"type": "module",
"engines": { "node": "16.10.0", "npm": "7.24.2" },
Я знаю, что это старый вопрос, но для других людей, которые все еще сталкиваются с этой проблемой, особенно на mac0S, кажется, что во всем этом есть проблема специфичности платформы. Я столкнулся с проблемой при попытке развернуть на Heroku, я сделал следующее, сборка прошла успешно, а затем развертывание сработало. Пожалуйста, сделайте следующее:
- Добавьте предпочитаемую версию
fsevents
кoptionalDependencies
в твоемpackage.json
- После этого запустите npm install.
Я предполагаю, что в настоящее время у вас нет записи для
optionalDependencies
в твоемpackage.json
Итак, вот так:"optionalDependencies": { "fsevents": "2.x.x" }