我正在使用这里描述的npm链接
http://npmjs.org/doc/link.html
本地一切都很完美。当我部署到Heroku时,我收到错误消息
Error: Cannot find module '...'
如何使用Heroku进行此操作?
答案 0 :(得分:3)
我希望有一个优雅的解决方案(这将使我的生活变得更容易)。您的自定义程序包由node_modules
符号链接到npm link
,但是git doesn't follow symbolic links nowadays。所以,当你git push
到Heroku时,没有办法让你的自定义套装继续骑行。
但请注意,从我的实验中,Heroku将尊重您推入的任何node_modules,而不是尝试从网络安装它们。它本质上只运行npm install --production
。也许直接与你的软件包的开发源有一个硬链接可以解决这个问题,但是我不确定Git是否能很好地使用它。使用风险自负!
编辑:如果你想知道完全 Heroku做了什么,it's all open source。
理想的情况是将包装(如果它们是开源的)放到NPM本身上。这是非常轻松和自动的。