windows中heroku达到的最大setlocal递归级别
Posted
技术标签:
【中文标题】windows中heroku达到的最大setlocal递归级别【英文标题】:maximum setlocal recursion level reached for heroku in windows 【发布时间】:2018-10-04 22:32:21 【问题描述】:我正在尝试在 heroku 中托管一个小应用程序。该应用程序已经启动。现在,当我尝试推送其他更改并因此进行日志记录时;我在我的 cmd 中收到此错误。
该应用在 laravel 5.4 中。我正在运行 Windows 10。而且我对托管和 heroku 还比较陌生。
问题的可能解决方案是什么?
【问题讨论】:
【参考方案1】:我今天遇到了同样的问题,我认为这与 Heroku CLI 自动更新有关。
我设法通过更改此文件来修复它:%LOCALAPPDATA%\heroku\client\7.0.15\bin\heroku.cmd
第 4 行是:
if not "%HEROKU_REDIRECTED%"=="1" if exist "%LOCALAPPDATA%\heroku\client\bin\heroku.cmd" (
我把它改成了:
if not %HEROKU_REDIRECTED%=="1" if exist "%LOCALAPPDATA%\heroku\client\bin\heroku.cmd" (
基本上当%HEROKU_REDIRECTED%
首先用双引号括起来时,if语句总是评估为真,导致递归。
【讨论】:
对我来说,我必须评论这条线才能让它工作:set HEROKU_REDIRECTED="1"
。我的 Heroku 版本是 heroku/7.0.25 win32-x64 node-v10.0.0
【参考方案2】:
Heroku 对此发布了更新和修复:
https://help.heroku.com/FMA2YNC8/heroku-cli-windows-v7-setlocal-recursion-error
递归错误已在 7.0.13 版本中修复,但是 该错误可能会导致早期版本的 CLI 无法使用。为了解决这个问题, 删除 CLI 客户端文件夹 C:\Users\\AppData\Local\heroku\client 然后运行 heroku 更新。
【讨论】:
删除客户端文件夹让我运行更新命令,但更新完成后,它立即返回产生递归错误。 Czarek 的上述解决方案适用于最新版本 (7.0.15)。 我实际上拥有 Heroku 版本heroku/7.0.25 win32-x64 node-v10.0.0
,但仍然面临问题。 @Czarek 解决方案帮助了我。无论如何,我已经更新了 CLI。感谢您的链接。 :)以上是关于windows中heroku达到的最大setlocal递归级别的主要内容,如果未能解决你的问题,请参考以下文章
Windows 批处理中 setlocal enabledelayedexpansion 的作用
Heroku 上的 Celery、RabbitMQ 和 Django:达到内存限制
Memcachier 达到缓存限制时 Heroku 请求超时