为什么rails.bat有效,rails无效



当试图在Windows中创建一个新的RubyonRails应用程序时,命令

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"与"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" %* 

根据您更新的问题,我可以假设PATHEXT,负责知道要执行的文件没有扩展名的环境变量丢失了。BAT来自它。

要确认,请在新的命令提示符上执行SET PATHEXT并查看输出,结果应该是分号分隔的值,包括.EXE.BAT.COM,可能还有.RB

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

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

然后尝试重新安装。

请参阅RubyInstaller上的此线程。

您必须下载railsinstaller for windows,这将帮助您解决所有冲突从rubyforge 下载

最新更新