尝试将项目推送到heroku-使用heroku-cli和连接到Github时出现相同的错误。
错误日志:
-----> Building dependencies
Installing node modules (package.json + package-lock)
npm ERR! Cannot read property 'match' of undefined
Package.json
{
"name": "myApp",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.7.0",
"react-dom": "^16.7.0",
"react-router-dom": "^4.3.1",
"react-scripts": "2.1.3",
"react-social-icons": "^4.1.0",
"react-spring": "^7.2.10"
},
...
"eslintConfig": {
"extends": "react-app"
},
"engines": {
"node": "10.13.0"
},
...
"devDependencies": {
"react": "^16.7.0"
}
}
React最初并不在devDependencies中--将其作为修复早期错误的尝试。
问题仍然存在。
4条答案
按热度按时间k5hmc34c1#
我也遇到了同样的问题,但是上面提到的解决方案都不适用于我,我甚至试着清理我的远程存储库,使用heroku-存储库插件,顺便说一句,你可以使用heroku插件安装:安装heroku-存储库,然后安装heroku存储库:重置-一个应用程序名来试试运气。
对我有效的解决方案是从Heroku禁用node_modules缓存,Heroku维护一个在构建之间持久化的缓存目录,这个缓存用于存储npm、yarn和bower的缓存。
尝试使用以下步骤。
1.heroku配置:设置节点模块缓存=假
1.现在使用-git push heroku master命令再次推送
hs1rzwqc2#
检查包锁. json
此问题很可能与您的
package-lock.json
有关。此文件会导致很多问题,但建议您使用check it into source。话虽如此,以下两件事中的一件应该可以解决您的问题:
1.首先尝试在本地删除
package-lock.json
和node_modules
,然后重新安装所有依赖项:npm i
。请在此操作完成后再次尝试推送到Heroku。1.如果上面的建议不起作用,只需在本地删除您的
package-lock.json
文件,提交您的更改,然后尝试再次推送到Heroku。另外,你不应该把
react
作为开发依赖项列出,你可以从你的package.json
中删除它。nnvyjq4y3#
您可能想要从您的终端执行此
heroku config:set NODE_MODULES_CACHE=false
。这是为我们工作的这个相同的错误。2eafrhcq4#
请删除锁定文件,然后重试,它将工作。