Heroku找不到本地的npm包

时间:2015-10-20 05:29:40

标签: node.js heroku npm

我的repo中包含一个本地npm包(由于其超过200mb的大小,我没有将整个public void ProcessBuffer(byte[] receivedBuffer, int bytes) { using (var fileStream = new FileStream(fileName, FileMode.Create)) // overwrites file { fileStream.Write(receivedBuffer, 0, bytes); } } 包含在我的仓库中,只有我必须修改的特定包才能满足我的需求)。

node_modules中,本地包声明如下所示:

package.json

我得到的错误

dependencies : { 
  local_package: "./my_local_package"
  ...
}

我不确定 npm ERR! enoent ENOENT: no such file or directory, open '/app/tmp/cache/my_local_package' 是否是我的回购所在的地方,如果不是我应该更改它。

节点v4.2.1,npm v2.14.7

2 个答案:

答案 0 :(得分:1)

根据npm documentation for local paths,你应该这样定义:

"dependencies" : { 
  "local_package": "file:./my_local_package"
  ...
}

答案 1 :(得分:0)

不建议将node_modules添加到git或将其推送到heroku。

因此,一种可能的解决方案是将您的local_package放在单独的git仓库中,然后您可以对package.json执行以下操作。

dependencies : { local_package: "git+https://example.com/local_package.git" ... }

我觉得这是一个更好的解决方案,而不是只在node_modules中使用local_package,而忽略所有其他的。