为什么rails.bat工作但rails没有?

时间:2011-06-01 21:51:24

标签: ruby-on-rails ruby windows ruby-on-rails-3 rake

尝试在Windows中创建一个新的Ruby on Rails应用程序时,命令

rails new test_app 

返回错误

'rails' is not recognized as an internal or external command, operable program 
or batch  file

但命令

rails.bat new test_app

工作得很好。我已将.. \ ruby​​ \ bin目录添加到我的PATH变量中,但它似乎没有改变任何东西。所有其他'rails'命令以及'rake'vs'rake.bat'也会出现类似的问题。

运行type rails.bat会返回:

@ECHO OFF
IF NOT "%~f0" == "~f0" GOTO :WinNT
@"ruby.exe" "C:/_LOCALdata/Ruby192/bin/rails" %1 %2 %3 %4 %5 %6 %7 %8 %9
GOTO :EOF
:WinNT
@"ruby.exe" "%~dpn0" %* 

2 个答案:

答案 0 :(得分:3)

从你更新的问题我可以假设PATHEXT,负责知道没有扩展名执行文件的环境变量缺少.BAT。

要确认,请在新的命令提示符上执行SET PATHEXT并查看输出,结果应该是以分号分隔的值,其中包含.EXE.BAT,{{1也许.COM

如果.RB为空或其中不包含PATHEXT,则可以解释为什么不起作用。

根据您的Windows版本,RubyInstaller的安装可能会导致这种情况,在这种情况下,我建议卸载并验证环境变量以查看它是否已恢复。

然后尝试再次安装。

请参阅this thread on RubyInstaller

答案 1 :(得分:0)

你必须为windows下载railsinstaller,这将有助于你解决所有冲突 从rubyforge

下载