我是Ruby,Git和Heroku的新手,我正试图在我的Window 7机器上安装所有东西。通过编辑一对heroku文件以包含rest-client gem,可以轻松修复第一个错误,但现在我收到此错误,我无法使用“google it”方法解决这个问题:
C:\rails\first_app>heroku login
DL is deprecated, please use Fiddle
Enter your Heroku credentials.
Email: foo
Password (typing will be hidden): C:/ruby/lib/ruby/2.0.0/Win32API.rb:14:in `init
ialize': No such file or directory (LoadError)
from C:/ruby/lib/ruby/2.0.0/Win32API.rb:14:in `dlopen'
from C:/ruby/lib/ruby/2.0.0/Win32API.rb:14:in `initialize'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:19
7:in `new'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:19
7:in `ask_for_password_on_windows'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:18
7:in `ask_for_credentials'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:22
1:in `ask_for_and_save_credentials'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:84
:in `get_credentials'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/auth.rb:41
:in `login'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/command/au
th.rb:31:in `login'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/command.rb
:213:in `run'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/lib/heroku/cli.rb:28:
in `start'
from C:/ruby/lib/ruby/gems/2.0.0/gems/heroku-3.0.1/bin/heroku:17:in `<to
p (required)>'
from C:/ruby/bin/heroku:23:in `load'
from C:/ruby/bin/heroku:23:in `<main>'
非常感谢任何帮助。
编辑:
它是64位版本的ruby 2.0.0。
嗯,我想我必须安装32位版本才能解决这个问题。谢谢你的链接。
答案 0 :(得分:1)
可能是因为你正在运行Ruby 2.我遇到了同样的问题。
我从这里复制粘贴我的答案:Heroku Login failed using Windows CLI
从安装目录外部使用“heroku login”命令时遇到了同样的问题,因为它使用了@kdmcclin解释的Ruby 2.1安装。
C:\>heroku login
DL is deprecated, please use Fiddle
Enter your Heroku credentials.
Email: xxxxx@xxxxxxx.net
Password (typing will be hidden): C:/Ruby21-x64/lib/ruby/2.1.0/Win32API.rb:14:in `initialize': No such file or directory (LoadError)
from C:/Ruby21-x64/lib/ruby/2.1.0/Win32API.rb:14:in `dlopen'
from C:/Ruby21-x64/lib/ruby/2.1.0/Win32API.rb:14:in `initialize'
...
但是如果你先安装dir然后再安装“bin”,那么命令工作正常:
C:\Program Files (x86)\Heroku\bin>heroku login
Enter your Heroku credentials.
Email: xxxxx@xxxxxxx.net
Password (typing will be hidden):
Authentication successful.
但是,我们必须从我们的项目目录运行命令。所以我所做的是更改PATH系统变量,以便在Ruby2.1之前拥有Heroku / bin路径。
旧路径:
C:\Ruby21-x64\bin;C:\Program Files (x86)\Heroku\bin;[...Otherstuff...];C:\Program Files (x86)\Git\bin\;C:\Program Files (x86)\git\cmd
新路径:
C:\Program Files (x86)\Heroku\bin;C:\Ruby21-x64\bin;[...Otherstuff...];C:\Program Files (x86)\Git\bin\;C:\Program Files (x86)\git\cmd
现在它正在运作:
C:\ProjectDir>heroku login
Enter your Heroku credentials.
Email: xxxxx@xxxxxxx.net
Password (typing will be hidden):
Authentication successful.