子模块无法安装依赖项(全局安装)-相对路径问题?

时间:2019-01-02 12:16:01

标签: node.js npm npm-install node-modules npm-scripts

我有一个npm包,其结构如下:

./
  ./backend
    ./package.json
  package.json

因此,基本上,同一文件夹中有两个npm模块,一个是另一个的子级,明智的是文件结构。

我的安装方式是,在父package.json中放置一个安装后脚本:

"postinstall": "cd backend && npm install && cd .."

仅在全局安装时会发生什么:首先会打印一些警告,指出基本上没有安装软件包。像这样:

npm WARN enoent ENOENT: no such file or directory, open '/usr/lib/node_modules/inschpektor/backend/node_modules/trim-newlines/package.json'

./backend/package.json中,所有依赖项都会出现。

我已经使用--unsafe-perm标志运行安装了:

npm install -g inschpektor --unsafe-perm将安装包含后安装脚本的父package.json。

我得到的最后一条日志错误消息是:

npm ERR! path /usr/lib/node_modules/inschpektor/backend/node_modules/ansi-regex/package.json
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall open
npm ERR! enoent ENOENT: no such file or directory, open '/usr/lib/node_modules/inschpektor/backend/node_modules/ansi-regex/package.json'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent 

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/codepleb/.npm/_logs/2019-01-02T01_52_46_911Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 254
npm ERR! inschpektor@0.9.1 postinstall: `cd backend && npm install && cd ..`
npm ERR! Exit status 254
npm ERR! 
npm ERR! Failed at the inschpektor@0.9.1 postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/codepleb/.npm/_logs/2019-01-02T01_52_47_511Z-debug.log

我在做什么错?还是您可能会在设置过程中看到缺陷?

如果您想进一步分析它,这里是获取git repo的链接:https://github.com/codepleb/inschpektor

0 个答案:

没有答案