2011-06-01 73 views
2

当试图在Windows上创建Rails应用一个新的Ruby命令为什么rails.bat能够正常工作,但是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'和'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" %* 
+0

您是否阅读过rails.bat以查看它与命令行中输入内容的不同之处? – 2011-06-01 22:52:22

+0

对不起,我不确定我明白你的意思。你能澄清吗? – 2011-06-02 02:50:12

+0

从命令提示符(如'C:>',键入'type rails.bat'并按下Enter键。阅读屏幕上的内容。当您尝试手动执行操作时,与您输入的内容有什么不同?另外,我注意到你在你的PATH中添加了'../ ruby​​/bin' ...你在Windows上实现了一个\而不是/用于路径分隔符? – 2011-06-02 14:13:05

回答

3

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

为了确认,请上一个新的命令提示做SET PATHEXT和看到输出,结果应该是分号分隔值包括.EXE.BAT.COM也许.RB

如果PATHEXT是空的或办其中不包含.BAT,这可以解释为什么不工作。

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

然后尝试再次安装它。

请参阅this thread on RubyInstaller关于此。

+0

已经在使用cmd.exe。从未使用任何您参考的程序。 cmd.exe存在问题 – 2011-06-02 02:48:33

+1

请提供您收到的完整错误,以便我们可以更好地诊断问题。用这些信息更新问题。 – 2011-06-02 03:36:04

+0

问题已更新。 – 2011-06-02 14:54:32

0

你必须下载railsinstaller窗户,这将帮助您解决所有冲突 从rubyforge

+1

嗯......如果rails.bat工作,显然rai ls已安装。这是一个路径问题或其他问题,下载安装程序不是答案。在开始收集倒票和失去代表之前,您可能需要删除这些内容。 – 2011-06-01 22:53:28

+0

老兄你在窗户上使用红宝石不要忘记。我之前有过这个问题。相信我,就像我说的那样。当涉及到在Windows上处理rails问题时,它会有很大的帮助。除非你想使用mac os – Uchenna 2011-06-01 23:47:42

+1

“老兄”,那么怎么办?如果安装了导轨,则已安装导轨,您可以自行对其进行配置。您只需要安装程序**安装** - 这就是为什么它被称为“安装程序”。 – 2011-06-02 14:15:35