RoR'新'命令挂起

时间:2011-11-11 05:33:00

标签: ruby-on-rails ruby

我刚刚在轨道上开始ruby。在终端中,我输入了#34; rails new TestApp",这就是终端发生的事情:

  create  
  create  README
  create  Rakefile
  create  config.ru
  create  .gitignore
  create  Gemfile
  create  app
  create  app/assets/images/rails.png
  create  app/assets/javascripts/application.js
  create  app/assets/stylesheets/application.css
  create  app/controllers/application_controller.rb
  create  app/helpers/application_helper.rb
  create  app/mailers
  create  app/models
  create  app/views/layouts/application.html.erb
  create  app/mailers/.gitkeep
  create  app/models/.gitkeep
  create  config
  create  config/routes.rb
  create  config/application.rb
  create  config/environment.rb
  create  config/environments
  create  config/environments/development.rb
  create  config/environments/production.rb
  create  config/environments/test.rb
  create  config/initializers
  create  config/initializers/backtrace_silencers.rb
  create  config/initializers/inflections.rb
  create  config/initializers/mime_types.rb
  create  config/initializers/secret_token.rb
  create  config/initializers/session_store.rb
  create  config/initializers/wrap_parameters.rb
  create  config/locales
  create  config/locales/en.yml
  create  config/boot.rb
  create  config/database.yml
  create  db
  create  db/seeds.rb
  create  doc
  create  doc/README_FOR_APP
  create  lib
  create  lib/tasks
  create  lib/tasks/.gitkeep
  create  lib/assets
  create  lib/assets/.gitkeep
  create  log
  create  log/.gitkeep
  create  public
  create  public/404.html
  create  public/422.html
  create  public/500.html
  create  public/favicon.ico
  create  public/index.html
  create  public/robots.txt
  create  script
  create  script/rails
  create  test/fixtures
  create  test/fixtures/.gitkeep
  create  test/functional
  create  test/functional/.gitkeep
  create  test/integration
  create  test/integration/.gitkeep
  create  test/unit
  create  test/unit/.gitkeep
  create  test/performance/browsing_test.rb
  create  test/test_helper.rb
  create  tmp/cache
  create  tmp/cache/assets
  create  vendor/assets/stylesheets
  create  vendor/assets/stylesheets/.gitkeep
  create  vendor/plugins
  create  vendor/plugins/.gitkeep
     run  bundle install

它挂在那里。我应该退出它并继续使用该应用程序吗?为什么它不能让我回到终端控制? 感谢。

更新:它问我密码并安装了一些宝石。但每次我创建一个新的rails项目时它都会这样做。这是正常的吗? 感谢。

3 个答案:

答案 0 :(得分:16)

系统正在“挂起”,因为它正在bundle install生成的Gemfile中通过rails new <project>安装所有gem。这是预期的行为。它会询问您的密码,以便它可以安装一些需要sudo访问权限的文件(最有可能将rail可执行文件放在您的路径中。)

通过传递bundle install参数,可以在调用rails new时跳过--skip-bundle步骤。在运行应用程序之前,您仍然需要调用bundle install,但至少可以在发生时控制

当您知道要更改Gemfile时使用--skip-bundle很有用,这样您就不必等待捆绑包安装所有宝石,然后再在几分钟内再次运行它

答案 1 :(得分:2)

这是一个相当陈旧的问题,但对于它的价值而言,这似乎现在已得到解决。如果你更新rails(gem update rails),它应该解决问题。

答案 2 :(得分:1)

由于大多数评论提到让rvm控制你的宝石很好。这种挂断很可能是因为权限问题,

您可以尝试以正常方式安装gem并查看它是否有效

gem install <gem name>

以下是关于使用带有gem集的rvm的基本文章(我写了一些时间)(http://keepthingssimple.tumblr.com/post/11274588229/using-rvm-to-keep-things-simple )