- 浏览: 172509 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (174)
- rails (25)
- js (15)
- ruby (30)
- webserver (5)
- mysql (13)
- security (5)
- thinking (5)
- common sense (2)
- linux (18)
- android (26)
- web browser (1)
- config and deploy (1)
- mac (5)
- css (2)
- db (8)
- version manager (1)
- editor (1)
- job (1)
- OOA (1)
- php (1)
- apache (2)
- mongrel (1)
- Mongodb (1)
- facebook (1)
- 架构 (1)
- 高并发 (1)
- twitter (1)
- Erlang (1)
- Scala (1)
- Lua (1)
- ubuntu (3)
- cache (1)
- 面试题 (2)
- android layout (2)
- android控件属性 (2)
- java (5)
- customize view (1)
- advanced (2)
- python (2)
- 机器学习 (5)
最新评论
直接在命令行(CMD)执行:
sudo gem install tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n
(以上是一行,一次输入并执行)
bundle install 时有一个gem出错 下面的gem就不会被安装
[simon@localhost]#rails c
Could not find gem 'sqlite3-ruby (>= 0, runtime)' in any of the gem sources.
Try running `bundle install`.
bundle install
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
bundler 是一套为了 Rails3 所打造的全新 Gem dependencies 管理工具:一套基于 Rubygems 的更高阶套件管理工具,适合让 Application 管理多套 Gems 依存关係的複杂情境。而你在 Rails3 中 (Bundler 不只用在 Rails3,其他例如 Sinatra 或是 Rails2 也都可以使用) 要使用的 Gems,也都必须宣告在它的 Gemfile 裡,没写在裡面的话,就算手动 require 也找不到。这跟已往你可以直接 require 任意 rubygems 不同,在使用 Bundler 的环境中,要 require 什麽 rubygems 必须透过 Gemfile 管理。
Gemfile 的寫法大致如下:
# 第二个参数可以指定版本
gem "rails" , "3.0.0.beta3"
# 如果 require 的档名不同,可以加上 :require
gem "sqlite3-ruby" , :require => "sqlite3"
# 可以用 Git 当做来源,甚至可以指定 branch, tag 或 ref。
gem 'authlogic' , :git => 'git://github.com/odorcicd/authlogic.git' ,
:branch => 'rails3'
# 可以直接用电脑裡的其他目录
gem "rails" , :path => '/Users/ihower/github/rails'
# Group 功能可以让特定环境才会载入
group :test do
gem "rspec-rails" , ">= 2.0.0.beta.8"
gem "webrat"
end
设定好 Gemfile 之后,我们有一些指令可以用:
* bundle check 可以检查目前缺少哪些 rubygem,然后你可以手动透过 sudo gem install 安装到系统裡。
* bundle install 安装所有需要的套件。如果系统已经有装了,就用系统的,不然会装到 $BUNDLE_PATH 下,预设是你家目录 ~/.bundle (因此请不要用 sudo 执行 bundle install)。如果来源是 git (例如上述的 authlogic),每次执行 bundle install 就会自动 git pull 更新,十分方便。
* bundle lock 和 bundle unlock 会做 snapshotting 记录下目前所有套件的版本在 Gemfile.lock,建议这个档桉也一起 commit 出去。适合要佈署或多人开发时,可以确保大家的版本都一致。
* bundle package 如果你的 Server 没联外网路,或是怕 rubygems.org 连不上,可以用这个指令把所有套件都打包到 vendor/cache 下。基本上,跟以往 Rails 1.X 2.X 时代佈署时会建议你尽量打包依存套件并 commit 出去,在使用 Bundler 后已经大大地不需要了,因为透过 bundle lock 我们就可以确保每台机器上执行的套件版本一致。
* bundle exec 因为 Bundle 可以说是独立出一个套件环境,所以如果有非 Rails 的指令需要执行,而且你的系统 Gems 又没有安装,那就会需要透过 bundle exec XXX 来执行。例如 bundle exec cucumber。
* bundle show gem_name 可以查看这个 gem 的目录位置
* bundle open gem_name 可以用编辑器打开这个 gem 的目录
开发 Rails3 实际用一阵子之后,发现很偏好将套件装成 Gem 了(如果有提供 Gem 版的话),之前 Rails 1.X 2.X 时代会比较喜欢装成 Plugin,因为想说别人要装 Gem 可能会有问题,以及佈署也怕出包。但是有了 Bundler 之后,只要 Bundle install 就可以装好并确保大家的版本一致会动。不像已往的 rake gems:install 超不可靠。可以透过 Bundle 装这些依存套件也减少了需要 commit 出去的 vendor/plugin 档桉,让你的专桉 repository 变乾淨了。另外,我也超喜欢的 Bundler 可以支援 Git 来源,只要 bundle install 就会更新,不需要额外的管理工具去烦恼更新 plugins。
发表评论
-
7点关于RESTful规范的API接口设计的想法
2016-11-28 14:29 941转:https://segmentfault.co ... -
RESTful API 设计指南
2016-11-28 14:17 405转:http://www.ruanyifeng.com/bl ... -
rails笔记
2016-11-28 13:55 641电子商务系统restful API问卷调查系统考试系统文档 ... -
重构臃肿 ActiveRecord 模型的 7 种方式
2016-11-19 16:29 552转:http://ruby-china.org/topics ... -
Rails系统重构:从单一复杂系统到多个小应用集群
2016-11-17 22:32 435转:http://www.infoq.com/cn/arti ... -
Custom dialog for data-confirm in Rails
2016-10-11 17:24 815Every Rails developers might ... -
常用ruby gem
2016-10-01 12:34 1117常见gems:Devise用于快 ... -
sphinx-0.99 + ultrasphinx
2016-07-27 20:20 472一、Installing Sphinx 1.Extra ... -
rails3 simple captcha
2015-06-03 16:06 634安装: ruby script/plugin insta ... -
测试ruby代码高亮
2015-05-27 16:33 534# encoding: utf-8 require 'd ... -
rails3 time zone
2015-01-04 20:07 507什么是Time Zone,就是时区,UTC或者是GMT ... -
Creating a 100% ajax CRUD using rails 3 and unobtrusive javascript
2014-12-29 22:29 723Creating the project and ... -
rails render用法
2014-12-29 18:55 971render :action => "sho ... -
Rails 3.2 的 Ajax 向导
2014-12-29 18:50 461原文: http://chloerei.com/2012/0 ... -
ror websites
2014-03-04 11:29 530http://railscasts.com/ ht ... -
OAuth gem for rails3
2012-05-21 23:24 795OAuth gem for rails,支持豆瓣,新浪微 ... -
识别验证码
2011-11-18 17:20 1104用imagemagick和tesseract-ocr破解简单 ... -
rails env
2011-04-08 19:41 14231.apt-get安装ruby: ~$ sudo apt-g ... -
搭建rails开发环境
2011-04-08 19:35 955http://www.netbeans.org/ NetB ... -
fragment cache
2011-03-30 01:30 8761.hold the current frament in a ...
相关推荐
安装捆绑器: gem install bundler 安装gems: bundle install 设置数据库: rails db:create db:migrate 。 用法 在本地启动Rails && react服务器 $ rails start REST PI文件 在响应中提供完整URL的地方,它们将...
待办事项列表应用程序 检查清单应用程序,您可以在其中与他人共享对检查清单的...# bundle gems gem install bundler bundle # Setup the SQL database rails db:create rails db:migrate # start the server rails s
Bundler,用于安装Gems凭证。 SQLite的 版本3 用于处理和存储帖子内容SQLite数据库管理。 密文 版本3.4 用于哈希和加密数据库密码的Bycrypt宝石。 Html 版本5 对于满足的棒棒糖 CSS 版本3 棒棒糖内容样式...
使用银行会计转账管理器API练习 要求 Ruby 2.7 Postgres 12 入门 克隆此仓库: git clone git@github.com:leandrost/bank-accounting.git cd bank-accounting 设置应用程序: bundle config --local path vendor...
在Sinatra中使用Rails资产 这是一个最小的演示应用程序,展示了如何在 Sinatra 应用程序中使用 。 Rails Assets 将与基于的应用程序集成在一起。 一体化 文件 此应用程序使用将 Sinatra 与 Sprockets 集成的 ...
使用 rubygems 安装它: gem install gaston 使用 bundler,将其添加到您的Gemfile : gem "gaston" 在 rails 项目中,运行以下命令: rails g gaston:config 否则,创建一个初始化程序。 您可以使用env...
幕后花絮RailsBump使用几种方法来检查gem版本是否与特定的Rails版本兼容: 如果gem版本直接依赖于“ Rails gems”之一(rails,railties,activerecord,activesupport等),则可能很明显它与某些Rails版本不立即...
运行 bundler 来安装所需的 gems bundle install 迁移数据库 rake db:migrate 运行 Rails 服务器 rails s 打开浏览器并查看localhost:3000的输出 这些是运行这个项目的步骤。我们希望运行这个没有问题。如果...
什么是宗教裁判所宝石?...RailRoady-帮助您生成Rails 3/4/5模型(ActiveRecord,Mongoid,Datamapper)和控制器UML图表的宝石 Rails ERD-一个为Rails应用程序生成实体关系图的宝石 Rails_best_practice
Rails 门户活动创作、部署和报告系统 设置 先决条件 使用 git、ruby 或 jruby,以及 rubgems、wget Gems:capistrano、capistrano-ext、ruby-debug(奇怪的是,haml也是,部署时……) 待办事项:了解为什么运行 ...
:使用Mustermann模式进行的高效文件系统操作。 :为模式对象制作的Ruby 版本。 :语法突出显示和树的模式可视化。 多种用于mustermann的模式类型,每种模式都是它们自己的小数据库,请参见。 Bundler的Git版本...
如果您正在使用进行项目(例如, 任何Rails项目,大多数Gems以及可能大多数其他Ruby软件),因此都拥有 ,只需将其添加到Gemfile的末尾Gemfile : gem 'meta_events' 另外,如果您不使用Bundler,请执行以下操作:...
- gem install bundler 安装 克隆存储库: $ git clone --recursive https://github.com/moneyadviceservice/frontend.git 安装Mysql 5.7 $ brew install mysql@5.7 $ brew link mysql@5.7 --force 确保MySQL...
gem install rails,领班(将gems目录添加到路径) 在项目目录中运行此命令: > bundle install --path vendor/bundle > cd client > yarn --ignore-engines 在/ certs目录中运行此命令: > openssl genrsa -out...
ActiveRecordFlorder ...如果您使用的是Bundler,请添加到您的Gemfile中 gem 'active_record_florder' , '~> 0.1.0' 或只是通过Ruby Gems安装 gem install active_record_florder 阿皮 这个gem为Act