Ruby开发入门

摘要:
开发环境搭建首先安装RubySDK,我安装的版本是2.0。之后安装IDE,这里用的是Jetbrain的RubyMine5.4.3,注意是否支持对应版本的RubySDK。开始Ruby之旅在RubyMineSettings-˃RubySDKandGems中配置好RubySDK后,就可以写我们最熟悉的HelloWorld的Ruby版了。打开RubyMine后,新建一个空工程,在里面添加一个RubyClass文件,输入内容如下:1234567891011classHellodefsaystr='helloworld!!!新的RubySDK中都已包含了Gems管理器,所以不用再安装了。在Settings-˃RubySDKandGems下,点击InstallGems。Rails的下载链接是http://rubygems.org/gems/rails1geminstallrails-4.0.0.gem--verbose--no-ri--no-rdoc常见安装问题1.为什么Gems安装这么慢?

开发环境搭建

首先安装Ruby SDK,我安装的版本是2.0。之后安装IDE,这里用的是Jetbrain的RubyMine 5.4.3,注意是否支持对应版本的Ruby SDK。



一段神奇的注册码...

现在最新版本是4.0.2, 使用这个key仍然有效, 对于这个没什么好说的, 如有必要,请支持购买正版。

No.1:

name:rubymine
License Key:

70414-12042010
00002VG0BeoZbwmNAMNCx5E882rBEM
Ysn1P!e"s830EDlHcWg8gmqYVkvZMo
Injf4yqlO1yy"82NiwNzyYInoT7AiX

No.2:

username:EMBRACE
license key:
89330-12042010
00001p4HOxG8it!A4uOcpk1E"boEjk
v!tn2JZJC8Jw4hVlEmviJ0ge461sTw
owxcaVPQvd1gQzGxOpt2rElKQ3"R7w


用在最新版5.4.3上竟然也可以!太神了吧!



开始Ruby之旅

在RubyMineSettings->Ruby SDK and Gems中配置好Ruby SDK后(RubyMine能自动找到安装好的SDK的位置),
就可以写我们最熟悉的HelloWorld的Ruby版了。打开RubyMine后,新建一个空工程,在里面添加一个Ruby Class文件,输入内容如下:

1
2
3
4
5
6
7
8
9
10
11
classHello
defsay
str='helloworld!!!'
5.times{putsstr}
end
end
hello=Hello.new()
hello.say

执行效果就是在控制台输出五遍hello world!!!。



Rails入门

想要创建一个Rails工程,首先要通过Gems安装Rails包。新的Ruby SDK中都已包含了Gems管理器,所以不用再安装了。
在Settings->Ruby SDK and Gems下,点击Install Gems。

Ruby开发入门第1张

实际上这与直接执行SDK中的Gems批处理是一样的:

1
geminstallrails--version"=4.0.0"--no-ri--no-rdoc

如果网速太慢,可以直接手动下载Gem后安装。Rails的下载链接是http://rubygems.org/gems/rails

1
geminstallrails-4.0.0.gem--verbose--no-ri--no-rdoc



常见安装问题

1.为什么Gems安装这么慢?

如果发现安装过程很慢,就用--verbose参数查看到底是卡在了哪里,一般可能是网络问题。可以通过sources命令管理源地址,
只保留一个淘宝的镜像地址。

1
2
3
4
5
6
7
8
#列举所有源
gemsources
#添加一个源
#删除一个源
gemsources-r"https://rubygems.org"

其他常用的源有:

1
2
3
4
http://rubygems.org/
http://gems.github.com
http://gems.rubyforge.org
http://ruby.taobao.org

2.找不到依赖项

安装rails 4时报错:Unable to resolve dependencies: rails requires actionmailer (= 4.0.0)

1
2
#更新RubyGem管理器
gemupdate--system



2013年11月2日 六

1.可以直接安装RailsInstaller,节省下载Gems包的时间。

2.但安装Mysql Gems包时碰到了错误:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
ERROR:Errorinstallingmysql2:
ERROR:Failedtobuildgemnativeextension.
D:/RailsInstaller/Ruby1.9.3/bin/ruby.exeextconf.rb
checkingforrb_thread_blocking_region()...yes
checkingforrb_wait_for_single_fd()...yes
checkingforrb_hash_dup()...yes
checkingforrb_intern3()...yes
***extconf.rbfailed***
CouldnotcreateMakefileduetosomereason,probablylackof
necessarylibrariesand/orheaders.Checkthemkmf.logfileformore
details.Youmayneedconfigurationoptions.
Providedconfigurationoptions:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=D:/RailsInstaller/Ruby1.9.3/bin/ruby
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/lib
extconf.rb:37:in`<main>':undefinedmethod`[]'fornil:NilClass(NoMethodError
)
GemfileswillremaininstalledinD:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9
.1/gems/mysql2-0.3.13forinspection.
ResultsloggedtoD:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/mysql2-0.
3.13/ext/mysql2/gem_make.out

报错的原因是Gems mysql2 0.3.13找不到依赖的libmysql库和头文件。所以首先确认是否安装了libmysql(即MySQL Connector/C),

即便安装了libmysql,可能gem命令在安装mysql2时也会找不到libmysql的库和头文件,所以执行gem install时直接通过参数指定:

1
2
3
4
geminstallmysql2--platform=ruby--
'--with-mysql-lib="C:ProgramFiles(x86)MySQLmysql-connector-c-noinstall-6.0.2-win32lib"
--with-mysql-include="C:ProgramFiles(x86)MySQLmysql-connector-c-noinstall-6.0.2-win32include"
--with-mysql-dir="C:ProgramFiles(x86)MySQLmysql-connector-c-noinstall-6.0.2-win32"'

这样就可以成功mysql2安装了!可是运行Rails在加载mysql2.so时还是会报Load Error错误,而且错误提示还是乱码!
查了好多文章最后终于在一老外的博客找到了答案,还需要做最后一步:将Connector Clib下libmysql.dll拷贝到Rubyin下
现在启动Rails应用,终于可以连接MySQL数据库了!

3.如果不使用RailsInstaller,那么用gem install时经常会报下面错误:

1
2
3
4
5
6
7
D:Ruby200in>geminstallrails--platform=ruby
ERROR:Errorinstallingrails:
The'atomic'nativegemrequiresinstalledbuildtools.
PleaseupdateyourPATHtoincludebuildtoolsordownloadtheDevKit
from'http://rubyinstaller.org/downloads'andfollowtheinstructions

这是因为缺少DevKit,而RailsInstaller已经集成了。首先安装

1
2
3
4
5
6
7
8
>cd<DEVKIT_INSTALL_DIR>
>rubydk.rbinit
#生成config.yml,这里会检查将要添加DevKit支持的Ruby列表,只支持通过RubyInstaller安装的Ruby
#如果这里列出的Ruby与你的要求不符,可以手动修改
>rubydk.rbreview#检查要添加DevKit支持的Ruby列表是否有误,可以略过
>rubydk.rbinstall
[INFO]Updatingconveniencenoticegemoverridefor'C:/Ruby192'
[INFO]Installing'C:/Ruby192/lib/ruby/site_ruby/devkit.rb'

现在可以执行gem install xxx --platform=ruby --no-ri --no-rdoc


免责声明:文章转载自《Ruby开发入门》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ros-tf、四元数、欧拉角及Eigen等基本知识普及Java安全之RMI协议分析下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

centos安装ruby

下面开始安装Ruby 一、下载Ruby源码包 wget ftp://ftp.ruby-lang.org/pub/ruby/2.1/ruby-2.1.7.tar.gz 二、解压安装Ruby tar zxvf ruby-2.1.7.tar.gz ./configure --disable-install-rdoc make make prefix=/usr/l...

Linux-019-Centos Shell 安装 Nginx 后启动时提示找不到Lua模块的libluajit-5.1.so.2文件,具体提示信息:./nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory

Centos Shell 安装后启动时提示找不到 lua 模块的 libluajit-5.1.so.2 文件,具体提示信息:./nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or di...

使用Docker构建redis集群

1集群结构说明 集群中有三个主节点,三个从节点,一共六个结点。因此要构建六个redis的docker容器。在宿主机中将这六个独立的redis结点关联成一个redis集群。需要用到官方提供的ruby脚本。 2构建redis基础镜像 本文选择版本为redis-3.0.7,如果需要其他版本,直接修改wget后面地址中的版本号即可。 代码清单2-1 下载&...

Linux学习 : 移植qt 5.6.3 及 tslib 1.4

                             (一) 移植 qt5.6.3 一、qt简介:   Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object...

linux下安装firefox

首先检查系统有没有安装:rpm -qa|grep firefox 如果有安装,先删掉rpm -e * firefox不同版本下载:http://liulanmi.com/firefox 具体方法如下:1、去官网下载Firefox的最新版本,以Firefox-latest.tar.bz2为例2、 解压这个最新版本: tar -jxvf Firefox-lat...

深入浅出Node.js(上)

(一):什么是Node.js Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹。从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到今年发布Windows移植版本,Node.js的前景获得了技术社区的肯定。InfoQ一直在关注Node.js的发展,在今年的两次...