Heroku找不到当地的npm包

我有一个本地npm软件包包含在我的回购(我不包括整个node_modules到我的回购,由于其超过200mb的大小,只有具体的包,我不得不修改,以适应我的需要)。

package.json ,本地包声明如下所示:

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

我得到的错误

  npm ERR! enoent ENOENT: no such file or directory, open '/app/tmp/cache/my_local_package' 

我不确定/app/tmp/cache是否是我的repo驻留的地方,如果不是,我应该更改它。

节点v4.2.1,npm v2.14.7

根据本地path的npm文档 ,你应该这样定义它:

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

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

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

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

我觉得这比在node_modules中只有一个local_package更好,而所有其他的都被忽略。