如何解决非 MAC 操作系统上 npm 安装抛出 fevents 警告?

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 _ module/fserror。另外,我的 package.json 不包含 fserror。以下是我的包裹 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"
}
}

我可以在 node_modules\react-scripts\package.json-中的 response-script (在 package.json 的 devDependency 下定义)的 package.json 中看到 fsevents

{
"_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 命令并获取前面命令的 exit 状态。尽管有警告,结果却是0意味着成功。所以,看起来 Jenkins 的工作不应该因为这个而停滞不前。然而,我们仍然试图找到一种方法来消除这个警告,因为它与我们的操作系统无关。

295435 次浏览

在 Mac 和其他 Linux 系统中,fsevents的处理方式不同。Linux 系统忽略 fsevents,而 mac 安装它。正如上面的错误消息所说,fsevents是可选的,在安装过程中会跳过它。

您可以在 linux 系统中运行 npm install --no-optional命令来避免以上警告。

进一步资料

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

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

这样做:

npm install --no-optional

欲了解更多信息,请浏览: https://github.com/npm/npm/issues/11632

是的,它在使用命令 npm install --no-optional时工作
使用环境:

  • ITerm2
  • Macos 登录到我的 vm ubuntu16 LTS。

我也犯了同样的错误。在我的案例中,我使用映射驱动器从另一台计算机编辑代码,那台计算机运行的是 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 install --no-optional在您的 cmd。 然后运行这个代码 npm install -g ionic@latest cordova

npm i -f

我想转发一些来自 这根线的意见,在那里你可以阅读的问题和 问题解决了

这正是 Angular 的问题 Current package.json 需要 fsevent 这可能是个问题 非 OSX 用户。

有时候

即使从 package.json npm 中删除它,我仍然会失败,因为 另一个模块将其作为对等深度。

那么

如果 npm-crinkwrap.json 仍然存在,请删除它或尝试 npm i F

我得到了这个错误,Linux 系统(Ubuntu) ,当你运行:

Npm 安装

1)如果项目不在您的本地磁盘/计算机上,请将其复制到您的计算机上,然后再试一次。因此,您获得了访问文件夹的权限(只要确保您拥有访问权限)。

2)如果你仍然得到一些警告或错误,运行:

Npm 审计修复程序

这将解决依赖项中的漏洞,并通过提供简单运行的 npm 命令和进一步故障排除建议来帮助您修复漏洞。

希望能有帮助!

我发现了同样的问题,并且尝试了上面提到的所有解决方案。有些只能在本地存储库中工作,当我在远程存储库中使用 tric-CI 或 Pippeline 推送 PR 时,会返回相同的错误。最后,我使用下面的 npm 命令修复了它。

npm audit fix --force

我也有同样的问题,虽然我使用 MacOS。这个问题有点像窃听器。我通过重复运行命令解决了这个问题,

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

有一次它不工作,但是当我反复清理缓存,卸载 npm,重新安装 npm 后,错误就发生了。我使用角8和这个问题是常见的

如果要隐藏此警告,只需将 fsevents 作为可选的依赖项安装即可。 只要执行:

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

警告就不再是麻烦了。

我在吸毒, 角 CLI: 8.1.2 节点: 12.14.1 操作系统: win32 x64

奇怪的是,这对我有帮助

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

使用 sudo npm install -g appium

切换到 PNPM: https://pnpm.js.org/

fsevents警告消失了(在 Linux 上)。

甚至最新的纱线(2.x)也显示了这些警告。

不必每次都使用 --no-optional,我们只需将它添加到 npm 或纱线配置。

对于 Yarn,有一个默认的非可选配置,所以我们可以编辑它:

yarn config set ignore-optional true

对于 npm,没有默认的配置集,所以我们可以创建一个:

npm config set ignore-optional true

我通过删除 node_modules文件夹并运行 npm i来解决这个问题。

这在 npm v7中不再发生。您可以更新您的 npm 版本或更新到节点 v15或更高版本,默认情况下这将安装 npm v7。

按照以下步骤-

  1. 转到项目的“ package.lock.json”文件
  2. 按“ Ctrl + F”(启用搜索)
  3. 输入“达尔文”
  4. 重命名为“ linux”

node_module_fsevents

安装-D vue-loader vue-template-编译器 Vue CLI 如果您对手动设置 webpack 不感兴趣,建议您使用 Vue CLI 为项目搭建脚手架。Vue CLI 创建的项目预先配置了大多数常见的开发需求。

如果 Vue CLI 的内置配置不适合您的需要,或者您宁愿从头开始创建自己的 webpack 配置,请遵循本指南。

# 手动设置 # 安装 除非您是使用 Vue 模板编译器自己的分支版本的高级用户,否则应该同时安装 Vue-loader 和 Vue-template-Editor:

对于最近阅读它的人来说,在 Ubuntu 上最简单的事情就是安装 nvm、 node.js 和 nmp 的最新 LTS 版本。从 node.js 的版本7开始,这些问题已经得到了解决。

请参考以下指南: Https://computingforgeeks.com/how-to-install-node-js-on-ubuntu-debian/

检查节点版本,并检查 package.json是否使用不同版本的节点生成的。

我从 Mac 上下载了一个 Linux 版的回购文件,在尝试使用 npm install时遇到了这个错误。我使用的是节点 v14.15.0,当我切换到 v16.13.0时,错误消失了。