【问题标题】:npm - `cd` fails when used a dependencynpm - 使用依赖项时`cd`失败
【发布时间】: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


【解决方案1】:

事实证明,解决方案是通过在一个 package.json 中使用 npm 版本和在另一个 package.json 中使用 github url 来强制 NPM 安装依赖项两次。

【讨论】:

    猜你喜欢
    • 2016-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    • 2017-01-17
    • 2022-01-13
    • 2014-08-08
    • 2020-02-25
    相关资源
    最近更新 更多