heroku /usr/bin/env: 'ruby.exe\r': 没有这样的文件或目录问题

noo*_*ils 1 ruby-on-rails heroku ruby-on-rails-5

因此,过去几周我一直将我的应用程序部署到同一个 heroku 服务器,并且运行良好。

\n\n

我刚刚尝试部署最新的代码,并在尝试运行时收到此错误:

\n\n
heroku run rails db:migrate\n
Run Code Online (Sandbox Code Playgroud)\n\n

我得到的错误是这样的:

\n\n
/usr/bin/env: \xe2\x80\x98ruby.exe\\r\xe2\x80\x99: No such file or directory problem\n
Run Code Online (Sandbox Code Playgroud)\n\n

我查看了有关此问题的许多其他主题并听取了他们的建议。

\n\n

最常见的答案是更改 bin/bundle、bin/rails 和 bin/rake 文件夹的第一行:

\n\n
#!/usr/bin/env ruby.exe\n
Run Code Online (Sandbox Code Playgroud)\n\n

对此:

\n\n
#!/usr/bin/env ruby\n
Run Code Online (Sandbox Code Playgroud)\n\n

但这对我不起作用并且我不断收到相同的错误

\n\n

对于这个问题还有其他可能的解决方案吗?

\n\n

我在 Windows 机器上运行

\n

Zav*_*ski 5

我在这里遇到了同样的问题,运行 Rails 5 。虽然我不是 100% 确定,但我相信这是因为 bin/ 文件上的行结尾出现问题而发生的。

我更改了 Git 上的全局设置,处理行结尾:

$ git config --global core.autocrlf true
Run Code Online (Sandbox Code Playgroud)

然后更新 bin 文件,其中:

rails app:update:bin
Run Code Online (Sandbox Code Playgroud)

(在以前的 Rails 版本中,它是rake rails:update:bin

有关 Git 如何处理此问题(以及如何在必要时刷新存储库)的更多信息,请访问:https://help.github.com/articles/dealing-with-line-endings/