首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >npm安装上的ENOTDIR错误(节点4上的npm 3)。我知道:遗留。对不起:( )

npm安装上的ENOTDIR错误(节点4上的npm 3)。我知道:遗留。对不起:( )
EN

Stack Overflow用户
提问于 2022-06-16 10:17:43
回答 3查看 3.2K关注 0票数 2

首先,我很抱歉在这里报告了npm3的一个问题,但看起来旧的回购目前处于只读模式。

我们有一个大而老的angularjs前端应用程序,它需要node4并使用npm3。几天前,当有人执行npm安装时,出现了一个问题。

错误

代码语言:javascript
运行
复制
npm ERR! Linux 4.19.0-13-amd64
npm ERR! argv "/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqq/abc-batch-qqq/node/node" "/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqq/abc-batch-qqq/node/node_modules/npm/bin/npm-cli.js" "install"
npm ERR! node v4.4.3
npm ERR! npm  v3.10.10
npm ERR! path /home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqq/abc-batch-qqq/node_modules/.staging/@types/node-69b48d6f/package.json
npm ERR! code ENOTDIR
npm ERR! errno -20
npm ERR! syscall open

npm ERR! ENOTDIR: not a directory, open '/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqq/abc-batch-qqq/node_modules/.staging/@types/node-69b48d6f/package.json'
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

package.json

代码语言:javascript
运行
复制
{
  "name": "abc",
  "version": "0.0.0",
  "description": "Description for abc",
  "private": true,
  "cacheDirectories": [
    "node_modules",
    "src/main/webapp/bower_components"
  ],
  "devDependencies": {
    "bower": "1.7.9",
    "browser-sync": "2.12.10",
    "del": "2.2.1",
    "eslint-config-angular": "0.5.0",
    "eslint-plugin-angular": "1.3.1",
    "event-stream": "3.3.4",
    "generator-jhipster": "3.4.2",
    "gulp": "3.9.1",
    "gulp-angular-filesort": "1.1.1",
    "gulp-angular-templatecache": "2.0.0",
    "gulp-autoprefixer": "3.1.0",
    "gulp-changed": "1.3.1",
    "gulp-cssnano": "2.1.2",
    "gulp-eslint": "3.0.1",
    "gulp-flatten": "0.3.0",
    "gulp-footer": "1.0.5",
    "gulp-htmlmin": "2.0.0",
    "gulp-if": "2.0.1",
    "gulp-imagemin": "3.0.2",
    "gulp-inject": "4.1.0",
    "gulp-natural-sort": "0.1.1",
    "gulp-ng-annotate": "2.0.0",
    "gulp-ng-constant": "1.1.0",
    "gulp-notify": "2.2.0",
    "gulp-plumber": "1.1.0",
    "gulp-rename": "1.2.2",
    "gulp-replace": "0.5.4",
    "gulp-rev": "7.1.0",
    "gulp-rev-replace": "0.4.3",
    "gulp-sourcemaps": "1.6.0",
    "gulp-uglify": "1.5.4",
    "gulp-useref": "3.1.0",
    "jasmine-core": "2.4.1",
    "karma": "1.1.2",
    "karma-chrome-launcher": "1.0.1",
    "karma-coverage": "1.1.1",
    "karma-jasmine": "1.0.2",
    "karma-junit-reporter": "1.1.0",
    "karma-phantomjs-launcher": "1.0.1",
    "karma-script-launcher": "1.0.0",
    "lazypipe": "1.0.1",
    "lodash": "4.14.0",
    "main-bower-files": "2.13.1",
    "map-stream": "0.0.6",
    "phantomjs-prebuilt": "2.1.9",
    "proxy-middleware": "0.15.0",
    "run-sequence": "1.2.2",
    "xml2js": "0.4.16",
    "yargs": "4.8.1",
    "useref": "1.4.1",
    "esquery": "1.0.1"
   },
  "engines": {
    "node": "^4.3"
  },
  "scripts": {
    "test": "gulp test"
  }
}

npm-调试

代码语言:javascript
运行
复制
warn optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
150443 warn notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
150444 verbose notsup SKIPPING OPTIONAL DEPENDENCY: Valid OS:    darwin
150444 verbose notsup SKIPPING OPTIONAL DEPENDENCY: Valid Arch:  any
150444 verbose notsup SKIPPING OPTIONAL DEPENDENCY: Actual OS:   linux
150444 verbose notsup SKIPPING OPTIONAL DEPENDENCY: Actual Arch: x64
150445 warn node-fetch@2.6.7 requires a peer of encoding@^0.1.0 but none was installed.
150446 verbose If you need help, you may report this error at:
150446 verbose     <https://github.com/npm/npm/issues>
150447 verbose stack Error: ENOTDIR: not a directory, open '/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq/node_modules/.staging/@types/node-69b48d6f/package.json'
150447 verbose stack     at Error (native)
150448 verbose cwd /home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq
150449 error Linux 4.19.0-13-amd64
150450 error argv "/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq/node/node" "/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq/node/node_modules/npm/bin/npm-cli.js" "install"
150451 error node v4.4.3
150452 error npm  v3.10.10
150453 error path /home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq/node_modules/.staging/@types/node-69b48d6f/package.json
150454 error code ENOTDIR
150455 error errno -20
150456 error syscall open
150457 error ENOTDIR: not a directory, open '/home/pparker/workspaces/eclipse/abc/abc_refactor/abc_qqqq/abc-batch-qqqq/node_modules/.staging/@types/node-69b48d6f/package.json'
150458 error If you need help, you may report this error at:
150458 error     <https://github.com/npm/npm/issues>
150459 verbose exit [ -20, true ]

我不能升级到新的npm版本,因为angularjs的应用程序和依赖。我试图迁移到npm6,但应用程序也停止了工作。

有什么线索吗?我完全绝望..。

先谢谢,再一次道歉。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-06-20 06:27:30

我发现问题了!

它与库生成器-jhipster(或它的任何依赖项)相关。

我们不再使用它了,所以我摆脱了它,一切都恢复了!

谢谢大家!

票数 2
EN

Stack Overflow用户

发布于 2022-06-16 11:01:26

刚刚解决了问题。这是因为主目录中有一个名为tmp的文件。

代码语言:javascript
运行
复制
rm -rf ~/tmp
sudo npm cache clear
sudo npm install -g node

还有..。如果您试图安装npm,那么同样的错误和解决方案将应用- delete ~/tmp。

票数 0
EN

Stack Overflow用户

发布于 2022-08-30 20:32:13

此问题可能与package.json文件中存在不正确/不兼容版本的库有关。我过去也有过同样的问题,在我的例子中,这是由browser-sync引起的。

要检查是否是这种情况,可以更改package.json文件,逐行删除库(或“分组”并逐组删除),并运行安装命令以查看安装是否正常工作。

预期的结果是,在删除有问题的库之后,install命令应该可以工作。

在识别它之后,您可以尝试将其降级为以前与项目一起工作的版本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72644258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档