版本是:
bash-3.2$ rails -v
Rails 3.2.9
我的红宝石是MacOSX上的内置红宝石:
bash-3.2$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
bash-3.2$ which ruby
/usr/bin/ruby
我的问题是,在rails new
(run bundle install
)的最后一步,似乎rails需要连接互联网才能下载一些软件包。通常我需要5分钟等待rails
使用rails new
创建任何项目。
我想知道我的计算机上的某些东西是否配置得不好。
另一个奇怪的事情是,在我完成rails new PROJECT_NAME
后,它会显示:
Using sqlite3 (1.3.6)
Using uglifier (1.3.0)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
似乎已经安装了sqlite3
,但是,当我尝试:
bash-3.2$ bundle show sqlite3
Could not locate Gemfile
它仍然抱怨未安装sqlite3
。也许这就是rails new
缓慢的原因(Even sqlite3
已安装一次。它仍然需要下载捆绑包)
在bundle install
之前,rails要求输入我的系统密码:
Enter your password to install the bundled RubyGems to your system
但由于bundle show sqlite3
失败,我仍不确定这些软件包是否已安装到系统中。
有没有人知道为什么rails new
在我的电脑上这么慢?谢谢!
答案 0 :(得分:1)
另一种解决方案是使用RVM。它类似于rbenv。我个人使用RVM。我不会也不会建议使用gemsets。无论如何,Bundler完成了宝石版本的分离。
答案 1 :(得分:0)
bundle install
的内容,即rails新序列中的最后一步。改为运行:
rails new appname -B
-B
标志告诉rails“跳过包”(reference)。然后进入app文件夹运行:
bundle install --verbose
检查输出中的潜在错误。
gem uninstall bundler -v your-version-number
gem install bundler -v new-version-number