无法在Win上运行来自heroku的控制台

时间:2011-06-06 20:06:22

标签: ruby-on-rails windows heroku cygwin

我遇到与此处Unable to "run" on Heroku

相同的问题

正如上面发布的决议中所建议的,我已经安装了Cygwin - 而不是全新安装,因为它已经在我的机器上待了几个月。由于应用程序所需的所有宝石都已安装并且测试应用程序已成功部署并在Heroku上运行,因此我无需通过Cygwin窗口进行任何其他(宝石或其他)安装。当我在Cygwin上运行命令“heroku run rails console --app”时,它给出了与在Windows终端上运行命令时得到的相同的错误 -

C:/Ruby192/lib/ruby/gems/1.9.1/gems/heroku-2.2.4/lib/heroku/helpers.rb:213:in ``': No such file or directory - tput cols (Errno::ENOENT)
        from C:/Ruby192/lib/ruby/gems/1.9.1/gems/heroku-2.2.4/lib/heroku/helpers.rb:213:in `get_terminal_environment'
        from C:/Ruby192/lib/ruby/gems/1.9.1/gems/heroku-2.2.4/lib/heroku/command/run.rb:16:in `index'
        from C:/Ruby192/lib/ruby/gems/1.9.1/gems/heroku-2.2.4/lib/heroku/command.rb:114:in `run'
        from C:/Ruby192/lib/ruby/gems/1.9.1/gems/heroku-2.2.4/bin/heroku:14:in `<top (required)>'
        from C:/Ruby192/bin/heroku:19:in `load'
        from C:/Ruby192/bin/heroku:19:in `<main>'

现在奇怪的事情似乎是Cygwin通过C:/引用路径,而我希望它从/ cygdrive / c /中获取它。为了验证我在Cygwin的rails app目录中运行了一个简单的命令“gem list”,果然我得到了这个错误

$ gem list
C:\Ruby192\bin\ruby.exe: No such file or directory -- /cygdrive/c/Ruby192/bin/gem (LoadError)

但是如果我在安装了ruby和gem命令的C:\ Ruby192 \ bin目录下运行相同的gem list命令,那么命令运行正常并列出我的所有宝石。显然不知何故,Cygwin正在获得它似乎不知道如何解释的C:/路径。

听起来我错过了一些关于如何让Cygwin正确读取这些路径的基本知识。

似乎无法找到我在这里失踪的东西。

感谢您对如何解决此问题的想法。

-S

2 个答案:

答案 0 :(得分:1)

可能有一个更好的解决方案,但重新安装cygwin与ruby为我工作。更多信息: http://benscheirman.com/2009/06/getting-started-with-heroku-on-windows

答案 1 :(得分:1)

对于问题的路径部分:

最新的本机Windows可执行文件(例如bundle,heroku,pik,rake,ruby等)可以是 用于Cygwin。但是,您必须说:$ gem.bat list。或者,在〜/ .bashrc中:alias gem=gem.bat