我想将我的tesseract应用程序部署到heroku,但它总是“无法找到包tesseract-ocr”并且无法部署它。
我在学习这个教程和这个
我的步骤:
这是我得到的错误:
E: Unable to locate package tesseract-ocr
! Push rejected, failed to compile Apt app.
! Push failed
非常感谢您的帮助!
更多信息:我的应用程序确实可以在postman上本地运行,所以我不认为这是一个编码问题。
像你一样,在过去的三天里,我花了很多时间在互联网上寻找这个神秘谜题的线索。人们发现,问题是由于Heroku的buildpack与不同操作系统使用的不同换行符有关的bug——Windows使用CRLF,而Linux使用LF(我在Windows上使用WSL,我假设这个问题也适用于Windows上的你)。每当我使用单个包时,构建都会工作,但每当我添加额外的包时,Heroku都会告诉我它无法找到它们。如果你在Windows上,你需要一种方法来确保你有正确的换行符来防止这种情况发生(我在WSL中使用了vim)。
对于像我这样使用WSL的人来说,还有一个问题是git会将任何换行符转换为CRLF,所以即使我使用LF换行符进行编辑,我最终还是遇到了Heroku无法找到所需包的相同错误。按照建议,使用git config--global core. autocrlf false
来禁用它,然后确保您的文件仅使用LF换行符,然后推送。
我很惊讶,这些问题已经持续了这么长时间,我无法找到一个线程详细说明这个修复,但希望这对你有用。