【发布时间】:2018-03-01 23:59:14
【问题描述】:
我已经离开 Ruby on Rails 开发一段时间了,经历了几次系统更新。这发生在 Mac OS X Sierra 上,其系统版本为 Ruby (2.0.0p648) 和 Rails 4.0.2。
当appname 目录不存在时,创建新应用程序 (rails new appname) 可以正常工作 --- 该命令创建应用程序并按应有的方式填充它。但是,尽管所有指南和教程都说了什么,但当这样的目录存在时(即使它是空的)它也会失败。你也不能创建一个空目录,cd进去,然后运行rails new .
失败命令的输出如下所示:
存在
/Library/Ruby/Gems/2.0.0/gems/railties-4.0.2/lib/rails/generators/app_base.rb:97:increate_root': uninitialized constant Rails::Generators::AppBase::FileUtils (NameError) from (eval):1:increate_root' 来自 /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/command.rb:27:inrun' from /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/invocation.rb:126:ininvoke_command' 来自 /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/invocation.rb:133:inblock in invoke_all' from /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/invocation.rb:133:ineach' 来自 /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/invocation.rb:133:inmap' from /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/invocation.rb:133:ininvoke_all' 来自 /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/group.rb:232:indispatch' from /Library/Ruby/Gems/2.0.0/gems/thor-0.20.0/lib/thor/base.rb:466:instart' 来自 /Library/Ruby/Gems/2.0.0/gems/railties-4.0.2/lib/rails/commands/application.rb:43:in<top (required)>' from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:68:inrequire' 来自 /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:68:inrequire' from /Library/Ruby/Gems/2.0.0/gems/railties-4.0.2/lib/rails/cli.rb:15:in' 来自 /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:68:in require' from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:68:inrequire' 来自 /Library/Ruby/Gems/2.0.0/gems/railties-4.0.2/bin/rails:9:in<top (required)>' from /usr/bin/rails:22:inload' 来自 /usr/bin/rails:22:in `'
如何让 rails 能够在现有目录中创建应用程序?
【问题讨论】:
标签: ruby-on-rails ruby macos rubygems