【发布时间】:2018-07-19 16:23:21
【问题描述】:
我正在使用 postInstall 脚本运行 cd node_modules/<package-name> && ...。这在单独运行时工作正常。但是,当我将包用作依赖项时,它找不到<dependant-package>/node_modules/<package>/node_modules,这似乎是可以理解的,因为<package> 的依赖项位于<dependent-package>/node_modules 中。我正在使用一个分叉项目,该脚本似乎可以工作,但在我的分叉中失败了。我想知道是否有一个简单的解决方法。我正在使用命名空间,想知道这是否会改变任何东西......
【问题讨论】:
-
这个脚本是如何运行的?它是一个bash脚本吗?我们需要更多细节。
-
小幅编辑试图澄清,但实际上是
"scripts": {"postInstall" : "cd node_modules/<package-name> && ...}" -
好的,npm 正在运行它。首先使用 ls 找出你在哪里工作,然后从那里开始工作。还要检查您尝试 cd 到的目录的所有权。您还遇到什么错误?
-
一切都归我的用户所有。我看不出 ls 会有什么帮助。我已将脚本修改为
pwd && cd node_modules/<package-name> && ...,它位于<dependent-package>/node_modules/<package> -
ls 会让你知道 npm 从哪个目录开始。使用 node 和 npm 时,dir 范围会变得很奇怪。
标签: node.js npm npm-scripts