Windows不适合搞Ruby,请使用MacOS或Ubuntu
RVM
RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。
它是学习 Ruby / Rails必不可少的工具之一。
安装
1. 官网的安装方法
$ gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
$ \curl -sSL https://get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile
我行不通,因为没安装gpg2。使用以下指令安装:
apt-get install -y gnupg2
还是不行,将gpg2换成gpg
$ gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
2. 修改 RVM 的 Ruby 安装源以提高安装速度
$ echo "ruby_url=https://cache.ruby-china.com/pub/ruby" > ~/.rvm/user/db
Ruby 的安装与切换
1. 列出已知的 Ruby 版本
rvm list known
2. 安装一个 Ruby 版本
rvm install 2.2.0 --disable-binary
这里安装了最新的 2.2.0, rvm list known 列表里面的都可以拿来安装。
3. 切换 Ruby 版本
rvm use 2.2.0
4. 如果想设置为默认版本,这样一来以后新打开的控制台默认的 Ruby 就是这个版本
rvm use 2.2.0 --default
5. 查询已经安装的 ruby
rvm list
6. 卸载一个已安装版本
rvm remove 1.8.7
安装 Rails
1. 安装指定版本的 Rails
$ gem install rails -v 5.1.4
$ mkdir environment # 新建 environment 目录
$ cd environment/ # 进入 environment 目录
$ rails _5.1.4_ new hello_app
2. 如果你一切正常就跳过此步,但是我遇到了以下错误
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
根据提示的内容来看需要处理依赖关系,输入以下指令
bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java
另外我手贱卸载了bundle,运行以上命令的时候可能会报错Could not locate Gemfile,这是因为缺少Gemfile文件导致的,新打开一个终端窗口,在默认的路径下输入
bundle init
这样可以生成一个新的Gemfile文件
然后在之前创建的environment目录下,重新输入以下指令问题解决
rails _5.1.4_ new hello_app
3. 如果你未遇到问题或是问题解决,从这里继续
$ cd hello_app/
$ bundle install
$ rails server
4. 此时浏览器访问http://localhost:3000/
,应该能看到以下界面
结语
到此,搭建环境与第一个应用就完成了,有问题请及时指出。
随便吐槽以下,我其实还是比较排斥学Ruby的,因为它的定位很尴尬,前有Python后有Node.js,企业级又是Java至霸;唯一的好处就是Ruby程序员不好招,遇到了可能会给你高薪吧(。_。)
笔记
$ gem uninstall rails #卸载rails
$ gem list --local rails #查看rails
Q.E.D.