非MACOSでfsevents警告をスローするnpmインストールを解決するにはどうすればよいですか?


115

次の警告が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の下で定義されている)react-scriptsの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

回答:


69

fseventsMacと他のLinuxシステムでは異なる方法で処理されます。Linuxシステムは無視しますがfsevents、Macはそれをインストールします。上記のエラーメッセージには、これfseventsはオプションであり、インストールプロセスではスキップされると記載されています。

npm install --no-optional上記の警告を回避するために、Linuxシステムでコマンドを実行できます。

さらに詳しい情報

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

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


16
npm install --no-optionalを実行して、fseventsについて警告されることを回避しようとしました。しかし動作しませんでした:(
Deunz19年

1
残念ながら、これはnpmのバグのために他の問題につながります。参照してくださいgithub.com/npm/npm/issues/19877#issuecomment-368981968
TigerBearを

3
TigerBearが言うように、「-no-optional」は本当に、本当に悪い考えです。通常、警告を無視しても問題ありません。使用することもできますnpm install -fgithub.com/angular/angular/issues/13935
FoggyDay

4
警告を表示しないように、オプションの依存関係としてそれをまっすぐに削除するにはどうすればよいですか?
アーロンフランケ

私のために宣伝されたように動作しませんでした。Ubuntu 19.04 2020
Michael Durrant

37
npm i -f

このスレッドからいくつかのコメントを再投稿したいと思います。そこでは、問題について読むことができ、問題は解決されました

これはまさにAngularの問題です。現在のpackage.jsonでは、optionalDependenciesではなくdevDependenciesとしてfseventが必要です。これは、OSX以外のユーザーにとっては問題になる可能性があります。

時々

package.json npmから削除しても、別のモジュールがピア部門として持っているため、失敗します。

そう

npm-shrinkwrap.jsonがまだ存在する場合は、削除するか、npm i-fを試してください。


2
何をしnpm i -fますか?
スーパージェイド

2
同等の糸はありnpm i -fますか?
スーパージェイド

35

この警告を非表示にする場合は、オプションの依存関係としてfseventsをインストールする必要があります。実行するだけです:

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

..そして警告はもう気になりません。


9
これは、Mac以外のユーザーのオプションではありません。
マシュー

3
Mac以外で失敗
naringas

2
OPは次のよ​​うに述べています。「...この警告はOSに関連していないため、この警告を取り除く方法を見つけようとしています」ため、提案されたソリューションは機能していません。
matthiku

1
「-f」オプションを追加しましたか?
Juninho Cruz

10

package.jsonoptionalDependenciesキーでカウントします。 オプションの依存関係に関するNPM

fseventsこのオブジェクトに追加できます。MacOSとは異なるプラットフォームにパッケージをインストールしている場合は、yarnまたはnpmのfseventsいずれかによってスキップされます。

"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.

それが役に立てば幸い!


6

私は同じ問題を見つけ、上記のすべての解決策をgithubで試しました。一部はローカルリポジトリでのみ機能しますが、travic-CIまたはパイプラインを使用してリモートリポジトリにPRをプッシュすると、同じエラーが返されます。最後に、以下のnpmコマンドを使用して修正しました。

npm audit fix --force


問題は、誰もが持っているわけではなくnpm-auditnpm install npm-auditそれをインストールしようとすると大幅に失敗することです...
Serj Sagan

ここでいくつかの回答で説明されているように、オプションの依存関係としてfseventsもインストールされていれば、これはうまくいきました。
Safa Alai

3

MacOSを使用していますが、同じ問題が発生しました。問題は一種のバグです。コマンドを繰り返し実行することでこの問題を解決しました。

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

一度は機能しませんでしたが、キャッシュを繰り返しクリーンアップし、npmをアンインストールした後、npmを再インストールすると、エラーが発生しました。私はAngular8を使用していますが、この問題は一般的です



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
そのnpmcache clean --forceは、まったく同じ問題ではなく、fseventsの依存関係に関する別の問題で私を助けてくれました。
ジョシュ

1

--no-optional毎回使用する代わりに、npmまたはyarnconfigに追加するだけです。

Yarnの場合、デフォルトのオプションなしの構成があるため、次のように編集できます。

yarn config set ignore-optional true

npmの場合、デフォルトの構成セットがないため、次のものを作成できます。

npm config set ignore-optional true

0

同じエラーが発生しました。私の場合、マップされたドライブを使用して、2台目のコンピューターからコードを編集していました。そのコンピューターはLinuxを実行していました。gulp-watchがインストール前にオペレーティングシステムの互換性に依存している理由は正確にはわかりません(セキュリティの目的に関係していると思います)。基本的に、エラーはオペレーティングシステムとノードモジュールを呼び出すオペレーティングシステムをチェックすることです。私の場合、2つのオペレーティングシステムは同じではなかったため、エラーが発生しました。あなたのエラーの見た目からどれが私のものと同じです。

エラー

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 NURZIKRILLAH19年

-1

はい、次のコマンドnpm install --no-optional
を使用すると機能します。

  • iTerm2
  • macosは私のvmubuntu16LTSにログインします。

-1

Linuxシステム(Ubuntu)でこのエラーが発生しました。これは、次のコマンドを実行すると発生する可能性があります。

npmインストール

1)プロジェクトがローカルディスク/コンピューターに存在しない場合は、プロジェクトをコンピューターにコピーして、再試行してください。したがって、フォルダにアクセスするためのアクセス許可を取得します(アクセス許可があることを確認してください)。

2)それでも警告やエラーが発生する場合は、次のコマンドを実行します。

npm監査の修正

これにより、依存関係の脆弱性が解決され、実行が簡単なnpmコマンドとさらなるトラブルシューティングのための推奨事項が提供されるため、脆弱性の修正に役立ちます。

それが役に立てば幸い!


-1

PNPMに切り替えます:https://pnpm.js.org/

fsevents警告は(Linux上で)なくなっています。

最新のヤーン(2.x)でも警告が表示されます。


ここに警告がないのは、pnpmが依存関係をキャッシュする方法が原因である可能性があります。おそらく一度は警告が表示されていましたが、その後の使用は単にシンボリックリンクを作成し、警告を発行するインストールをスキップすることです。pnpmキャッシュをクリアすると、警告が再度表示される可能性があります。いずれにせよ、これは「患者を殺すことによって病気を治す」オプションであり、解決策ではありません。
erich2k 89

@ erich2k8あなたは間違っています。pnpmキャッシュをクリアしましたが、pnpmのインストール中に警告が表示されません。
KTCO

-2

誰かがイオンコルドバのインストールでこのエラーが発生した場合。このコードnpm install --no-optionalをcmdで使用するだけです。そして、このコードを実行しますnpm install -g ionic@latest cordova


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.