비 MAC OS에서 fsevents 경고를 던지는 npm 설치를 해결하는 방법은 무엇입니까?


116

npm install명령 에서 다음 경고가 발생합니다.

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules\rea
ct-scripts\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@
1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}
)
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\ch
okidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@
1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}
)

경고로 인해 Jenkins 작업이 실패로 표시되는 것으로 보이므로 동일한 작업을 제거하려고합니다.

나는 이미 이것을 확인했다 https://stackoverflow.com/a/42938398/351903 그러나 거기에 언급 된 것과 달리 설정에 / node_modules / fserrors가 없습니다. 또한 내 package.json에는 fserrors가 포함되어 있지 않습니다. 다음은 내 package.json입니다.

{
  "name": "mvc-panel",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "bootstrap": "^3.3.7",
    "jquery": "^3.2.1",
    "material-ui": "^0.18.3",
    "qs": "^6.4.0",
    "react": "^15.5.4",
    "react-alert": "^2.1.2",
    "react-bootstrap-table": "^3.4.1",
    "react-dom": "^15.5.4",
    "react-loader": "^2.4.2",
    "react-router-dom": "^4.1.1",
    "react-tap-event-plugin": "^2.0.1",
    "serve": "^6.0.0"
  },
  "devDependencies": {
    "datatables.net": "^1.10.15",
    "jquery": "^3.2.1",
    "react-scripts": "^1.0.7"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  }
}

나는의 (내 package.json의 devDependencies에서 정의된다) 반응 - 스크립트의 package.json에 fsevents을 볼 수 있습니다 node_modules\react-scripts\package.json-

{
  "_args": [
    [
      {
        "raw": "react-scripts@^1.0.7",
        "scope": null,
        "escapedName": "react-scripts",
        "name": "react-scripts",
        "rawSpec": "^1.0.7",
        "spec": ">=1.0.7 <2.0.0",
        "type": "range"
      },
      "D:\\Sandeepan\\Payu MVC\\backend codebase\\MVC2.0\\panel\\mvc-panel"
    ]
  ],
  "_from": "react-scripts@>=1.0.7 <2.0.0",
  "_id": "react-scripts@1.0.14",
  "_inCache": true,
  "_location": "/react-scripts",
  "_nodeVersion": "8.5.0",
  "_npmOperationalInternal": {
    "host": "s3://npm-registry-packages",
    "tmp": "tmp/react-scripts-1.0.14.tgz_1506471610836_0.5613740666303784"
  },
  "_npmUser": {
    "name": "timer",
    "email": "timer150@gmail.com"
  },
  "_npmVersion": "5.3.0",
  "_phantomChildren": {
    "asap": "2.0.6",
    "escape-string-regexp": "1.0.5",
    "graceful-fs": "4.1.11",
    "has-ansi": "2.0.0",
    "universalify": "0.1.1"
  },
  "_requested": {
    "raw": "react-scripts@^1.0.7",
    "scope": null,
    "escapedName": "react-scripts",
    "name": "react-scripts",
    "rawSpec": "^1.0.7",
    "spec": ">=1.0.7 <2.0.0",
    "type": "range"
  },
  "_requiredBy": [
    "#DEV:/"
  ],
  "_resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-1.0.14.tgz",
  "_shasum": "70fe76c9beb67b136b953e875bdfe4ad78d410d1",
  "_shrinkwrap": null,
  "_spec": "react-scripts@^1.0.7",
  "_where": "D:\\Sandeepan\\Payu MVC\\backend codebase\\MVC2.0\\panel\\mvc-panel",
  "bin": {
    "react-scripts": "./bin/react-scripts.js"
  },
  "bugs": {
    "url": "https://github.com/facebookincubator/create-react-app/issues"
  },
  "dependencies": {
    "autoprefixer": "7.1.2",
    "babel-core": "6.25.0",
    "babel-eslint": "7.2.3",
    "babel-jest": "20.0.3",
    "babel-loader": "7.1.1",
    "babel-preset-react-app": "^3.0.3",
    "babel-runtime": "6.26.0",
    "case-sensitive-paths-webpack-plugin": "2.1.1",
    "chalk": "1.1.3",
    "css-loader": "0.28.4",
    "dotenv": "4.0.0",
    "eslint": "4.4.1",
    "eslint-config-react-app": "^2.0.1",
    "eslint-loader": "1.9.0",
    "eslint-plugin-flowtype": "2.35.0",
    "eslint-plugin-import": "2.7.0",
    "eslint-plugin-jsx-a11y": "5.1.1",
    "eslint-plugin-react": "7.1.0",
    "extract-text-webpack-plugin": "3.0.0",
    "file-loader": "0.11.2",
    "fs-extra": "3.0.1",
    "fsevents": "1.1.2",
    "html-webpack-plugin": "2.29.0",
    "jest": "20.0.4",
    "object-assign": "4.1.1",
    "postcss-flexbugs-fixes": "3.2.0",
    "postcss-loader": "2.0.6",
    "promise": "8.0.1",
    "react-dev-utils": "^4.1.0",
    "style-loader": "0.18.2",
    "sw-precache-webpack-plugin": "0.11.4",
    "url-loader": "0.5.9",
    "webpack": "3.5.1",
    "webpack-dev-server": "2.8.2",
    "webpack-manifest-plugin": "1.2.1",
    "whatwg-fetch": "2.0.3"
  },
  "description": "Configuration and scripts for Create React App.",
  "devDependencies": {
    "react": "^15.5.4",
    "react-dom": "^15.5.4"
  },
  "directories": {},
  "dist": {
    "integrity": "sha512-+p0q2N2WW7L4WW6uObqN7fYwSQZ9fBI0StpMYl1Ukoz/lCbemf+yW6b8refyhTsGy62GAqxlpyEfVcTE3hJAxg==",
    "shasum": "70fe76c9beb67b136b953e875bdfe4ad78d410d1",
    "tarball": "https://registry.npmjs.org/react-scripts/-/react-scripts-1.0.14.tgz"
  },
  "engines": {
    "node": ">=6"
  },
  "files": [
    "bin",
    "config",
    "scripts",
    "template",
    "utils"
  ],
  "homepage": "https://github.com/facebookincubator/create-react-app#readme",
  "license": "MIT",
  "maintainers": [
    {
      "name": "timer",
      "email": "timer150@gmail.com"
    },
    {
      "name": "fb",
      "email": "opensource+npm@fb.com"
    },
    {
      "name": "gaearon",
      "email": "dan.abramov@gmail.com"
    }
  ],
  "name": "react-scripts",
  "optionalDependencies": {
    "fsevents": "1.1.2"
  },
  "readme": "ERROR: No README data found!",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/facebookincubator/create-react-app.git"
  },
  "version": "1.0.14"
}

최신 정보

npm install 명령을 실행하고 이전 명령의 종료 상태를 가져 왔습니다. 경고에도 불구하고 성공을 의미하는 0을 표시했습니다. 따라서 Jenkins 작업이 이로 인해 중단되어야하는 것처럼 보이지 않습니다. 그러나 우리는 OS와 관련이 없기 때문에이 경고를 제거 할 방법을 찾고 있습니다.


이것을 시도해보세요. stackoverflow.com/a/58178041/4088675 fsevents를 옵션으로 추가하기 aDependecy
Oluwaloni Richard

답변:


71

fseventsMac 및 기타 Linux 시스템에서는 다르게 처리됩니다. Linux 시스템은 fseventsMac이 설치하는 동안 무시 합니다. 위의 오류 메시지 fsevents는 선택 사항이며 설치 프로세스에서 건너 뜁니다.

npm install --no-optional위의 경고를 피하기 위해 Linux 시스템에서 명령을 실행할 수 있습니다 .

추가 정보

https://github.com/npm/npm/issues/14185

https://github.com/npm/npm/issues/5095


16
fsevents에 대한 경고를 받기 위해 npm install --no-optional을 실행하려고했습니다. 그래도 작동하지 않았다 :(
Deunz

1
불행히도 이것은 npm의 버그로 인해 다른 문제로 이어집니다. 참조 github.com/npm/npm/issues/19877#issuecomment-368981968
TigerBear

3
TigerBear가 말했듯이 "-선택 사항 없음"은 정말 나쁜 생각입니다. 일반적으로 경고를 무시해도됩니다. 다음을 사용할 수도 있습니다 npm install -f. github.com/angular/angular/issues/13935
FoggyDay

4
경고를 표시하지 않도록 선택적 종속성으로 제거하려면 어떻게해야합니까?
Aaron Franke

나를 위해 광고 된대로 작동하지 않았습니다. Ubuntu 19.04 2020 년 1 월
Michael Durrant

38

이 경고를 숨기려면 fsevents를 선택적 종속성으로 설치하면됩니다. 다음을 실행하십시오.

npm i fsevents@latest -f --save-optional

.. 그리고 경고는 더 이상 귀찮지 않을 것입니다.


9
이것은 Mac이 아닌 사용자를위한 옵션이 아닙니다.
Matthew

3
non-mac 실패
naringas

2
OP는 "...이 경고는 우리 OS와 관련이 없기 때문에 제거 할 방법을 찾으려고 노력 중입니다."라고 말 했으므로 제안 된 솔루션이 작동하지 않습니다.
matthiku

1
"-f"옵션을 추가 했습니까?
Juninho Cruz

37
npm i -f

이 스레드 에서 몇 가지 의견을 다시 게시하고 싶습니다 . 여기서 문제를 읽을 수 있고 문제가 해결되었습니다 .

이것은 정확히 Angular의 문제입니다. 현재 package.json에는 optionalDependencies가 아니라 devDependencies로 fsevent가 필요합니다. OSX를 사용하지 않는 사용자에게는 문제가 될 수 있습니다.

때때로

package.json npm에서 제거하더라도 다른 모듈이 피어 dep로 가지고 있기 때문에 여전히 실패합니다.

그래서

npm-shrinkwrap.json이 아직 있으면 제거하거나 npm i -f를 시도하십시오.


2
무엇을 npm i -f합니까?
Super Jade

3
에 상응하는 실이 npm i -f있습니까?
Super Jade

11

package.jsonoptionalDependencies키로 계산 합니다. 선택적 종속성에 대한 NPM .

fsevents이 객체에 추가 할 수 있으며 MacOS와 다른 플랫폼에 패키지를 설치 fsevents하는 경우 yarn 또는 npm 이 건너 뜁니다 .

"optionalDependencies": {
  "fsevents": "2.1.2"
},

설치 로그에 다음과 같은 메시지가 표시됩니다.

info fsevents@1.2.11: The platform "linux" is incompatible with this module.
info "fsevents@1.2.11" is an optional dependency and failed compatibility check. Excluding it from installation.
info fsevents@2.1.2: The platform "linux" is incompatible with this module.
info "fsevents@2.1.2" is an optional dependency and failed compatibility check. Excluding it from installation.

도움이 되었기를 바랍니다.


JSON을 엉망으로 만들고 싶지 않다면 다음 명령을 실행하십시오. npm i fsevents @ latest -f --save-optional, 그러면이 JSON이 파일에 추가됩니다.
Erich Wehrmann

7

나는 같은 문제를 발견했고 위에서 언급 한 모든 해결책을 github에서 시도했습니다. 일부는 로컬 저장소에서만 작동하며 travic-CI 또는 Pipelines를 사용하여 원격 저장소에 PR을 푸시하면 동일한 오류가 다시 발생합니다. 마지막으로 아래 npm 명령을 사용하여 수정했습니다.

npm audit fix --force


문제는 모든 사람이 가지고 있지 않고 npm-audit설치하려고 할 때 npm install npm-audit크게 실패 한다는 것입니다 ...
Serj Sagan

여기에 몇 가지 답변에 설명 된대로 선택적 종속성으로 fsevents가 설치되어 있다면 이것은 나를 위해 일했습니다.
Safa Alai

4

MacOS를 사용하고 있지만 동일한 문제가 발생했습니다. 문제는 일종의 버그입니다. 명령을 반복적으로 실행하여이 문제를 해결했습니다.

sudo npm cache clean --force 
sudo npm uninstall 
sudo npm install

한 번은 작동하지 않았지만 반복적으로 캐시를 정리하고 npm을 제거한 후 npm을 다시 설치하면 오류가 발생했습니다. Angular 8을 사용하고 있으며이 문제는 일반적입니다.



2

--no-optional매번 사용하는 대신 npm 또는 yarn 구성에 추가 할 수 있습니다.

Yarn의 경우 기본 옵션이없는 구성이 있으므로 편집 할 수 있습니다.

yarn config set ignore-optional true

npm의 경우 기본 구성 집합이 없으므로 하나를 만들 수 있습니다.

npm config set ignore-optional true

1

사용하고 있습니다. Angular CLI : 8.1.2 노드 : 12.14.1 OS : win32 x64

이상하게도 이것은 나를 도왔습니다

npm cache clean --force
npm uninstall @angular/cli
npm install @angular/cli@8.1.2

1
그 npm cache clean --force는 정확히 똑같은 문제가 아니라 fsevents 종속성에 관한 또 다른 문제에서 나를 도왔습니다.
josh

0

같은 오류가 발생했습니다. 제 경우에는 매핑 된 드라이브를 사용하여 두 번째 컴퓨터에서 코드를 편집했습니다. 그 컴퓨터는 Linux를 실행하고있었습니다. gulp-watch가 설치하기 전에 운영 체제 호환성에 의존하는 이유를 정확히 모르겠습니다 (보안 목적과 관련이 있다고 가정합니다). 본질적으로 오류는 운영 체제와 노드 모듈을 호출하는 운영 체제를 확인하는 것입니다. 제 경우에는 두 운영 체제가 동일하지 않아 오류가 발생했습니다. 귀하의 오류의 모습에서 내 것과 동일합니다.

오류

Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

어떻게 고쳤습니까?

Linux 컴퓨터에 직접 로그인하여 실행했습니다.

npm install --save-dev <module-name>

그런 다음 내 코딩 환경으로 돌아 갔고 그 후 모든 것이 잘되었습니다.

도움이 되었기를 바랍니다.


이 사용 npm i fsevents@latest -f --save-optional
RAVI BANGKIT NUR ZIKRILLAH

-1

예, npm install --no-optional
사용 환경 명령을 사용할 때 작동 합니다.

  • iTerm2
  • 내 VM ubuntu16 LTS에 macos 로그인.

-1

이 오류, Linux 시스템 (Ubuntu)이 발생했으며 다음을 실행할 때 발생할 수 있습니다.

npm 설치

1) 프로젝트가 로컬 디스크 / 컴퓨터에 없으면 컴퓨터에 복사하고 다시 시도하십시오. 따라서 폴더에 액세스 할 수있는 권한을 얻습니다 (액세스 권한이 있는지 확인하십시오).

2) 여전히 경고 또는 오류가 발생하면 다음을 실행하십시오.

npm 감사 수정

이렇게하면 종속성의 취약성이 해결되고 추가 문제 해결을위한 간단한 실행 npm 명령과 권장 사항을 제공하여 취약성을 해결하는 데 도움이 될 수 있습니다.

도움이 되었기를 바랍니다.


-1

PNPM으로 전환 : https://pnpm.js.org/

fsevents경고는 (리눅스) 사라 졌어요.

최신 실 (2.x)도 경고를 표시합니다.


여기서 경고가없는 것은 pnpm이 종속성을 캐시하는 방식 때문일 수 있습니다. 여전히 경고가 한 번 있었을 것입니다. 그러나 후속 사용은 단순히 경고를 발행하는 설치를 건너 뛰고 심볼릭 링크를 만드는 것입니다. pnpm 캐시를 지우면 경고가 다시 나타날 수 있습니다. 어느 쪽이든, 이것은 해결책이 아니라 "환자를 죽임으로써 질병을 치료하는"옵션입니다.
erich2k8

@ erich2k8 틀 렸습니다. pnpm 캐시를 지우고 pnpm 설치 중에 경고가 나타나지 않습니다.
KTCO

-2

누군가 ionic cordova install에 대해이 오류가 발생하면. npm install --no-optionalcmd 에서이 코드 를 사용하십시오. 그런 다음이 코드를 실행하십시오.npm install -g ionic@latest cordova


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.