介绍
Ruby是一种动态编程语言,可以用于从简单的脚本到游戏和Web应用程序。 它于1993年首次在日本发行,但在2005年被推广为服务器端Web开发语言。 Ruby旨在为初学者设计易于使用和有趣,但功能强大,可以创建复杂的系统。 对初学者和有经验的开发人员来说,这是一个很好的选择。
虽然有很多方法可以在Windows上设置Ruby,但Microsoft建议您使用Windows Subsystem for Linux (WSL)和Bash来进行Ruby开发。 WSL是一种Windows 10功能,可让您在Windows上运行本机Linux命令行工具。 许多Ruby库设计为在Linux上运行,并且在Windows上运行时可能会出现问题。 Microsoft与Canonical和其他Linux发行版合作,为Bash shell和Linux命令行工具提供本机支持,以解决此问题。 使用Bash和WSL,您将使用自己喜欢的Windows工具编辑文件,但是使用Bash和命令行工具来执行Ruby及其相关工具。
在本教程中,您将使用命令行在本地Windows 10机器上设置一个Ruby编程环境。 您将在Windows上配置Bash,然后使用RVM ,Ruby版本管理器安装最新版本的Ruby及其先决条件。 然后你将通过编写一个简单的Ruby程序来测试你的环境。
先决条件
您将需要一台运行Windows 10的计算机与创建者更新 ,并访问以管理权限安装软件。
第1步 - 在Windows上安装Bash
您将使用命令行安装和使用Ruby。 命令行是与计算机交互的非图形方式。 您不必使用鼠标点击按钮,而是键入命令作为文本并接收基于文本的反馈。 命令行(也称为外壳)可让您自动执行每天在计算机上执行的许多任务,并且是软件开发人员的重要工具。 Windows提供了两个命令行界面:典型的命令提示符和PowerShell。 我们要安装Bash,一种您在Linux和macOS上找到的受欢迎的shell和命令语言。
如果您希望使用命令行界面使用,请参阅Linux终端的简介 。
首先,在您的机器上启用开发人员模式 。 为此,打开设置应用程序,选择更新和安全 ,然后选择边栏中的开发人员条目。 然后检查开发人员模式选项,并接受提示,要求您验证此更改。
接下来,打开控制面板并选择程序 。 然后选择打开或关闭Windows功能 。 在出现的组件列表中,检查Windows Subsystem for Linux(测试版)的选项。 然后单击确定 ,等待Windows安装其他组件,可能需要几分钟。
系统将提示您重新启动计算机,以确保所有新组件都正确配置。 如果您不重新启动,事情将无法正常工作。
当计算机重新启动时,打开命令提示符并键入:
bash
系统将提示您从Windows Store安装Bash。 这是一个免费下载,需要几分钟的时间来下载和提取。
OutputThis will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms
Press "y" to continue: y
Downloading from the Windows Store... 100%
Extracting filesystem, this will take a few minutes....
一旦安装程序完成,它将要求您创建一个用户:
OutputPlease create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms.wslusers
Enter new UNIX username: Sammy
Enter new UNIX password:
输入您要使用的用户名,按ENTER
,然后输入密码。 键入密码时,您的按键不会显示在“终端”窗口中。 这是一个安全措施,是在命令行提示输入密码时会经常看到的。 即使您没有看到它们,系统也会记录您的击键,所以输入密码后请按ENTER
键,此过程将继续。
最后,Bash将启动,您将看到一个提示,显示您的计算机名称。
sammy@yourmachine:/mnt/c/Users/Sammy$
警告 :Windows子系统Linux有自己的文件系统,它存储在操作系统的隐藏文件中。 Microsoft不支持从任何Windows应用程序访问此文件系统。
但是,您可以从Bash shell访问所有现有文件。 例如,您可以在/mnt/c
目录中找到C:
驱动器的内容。 Microsoft建议您处理此文件夹中的文件。 这样,您可以使用现有的Windows工具来打开和修改文件,并仍然可以从Bash shell访问它们。 从Windows程序(如文本编辑器,文件管理器和IDE)尝试访问Windows Subsystem for Linux文件系统的其他部分中的文件可能会导致数据损坏,并且不受支持。
现在您已经安装并运行了Bash,我们来安装RVM,我们将使用它来安装Ruby及其所有依赖项。
第2步 - 安装RVM和Ruby
RVM自动化在Ubuntu或MacOS系统上设置Ruby环境的过程,并且由于您正在运行的Bash设置基于Ubuntu,所以这也是在Windows上设置事务的最快方法。 我们来安装它,所以我们可以用它来安装Ruby。
使用RVM安装Ruby的最快方法是运行RVM网站上托管的安装脚本。
首先,使用gpg
命令联系公钥服务器,并请求用于对每个RVM版本进行签名的RVM项目的密钥。 这样可以验证您将下载的RVM版本的合法性。
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
接下来,安装gnupg2
软件包,因为RVM的安装脚本将使用该组件来验证该版本。 执行此命令来安装此软件包:
sudo apt-get install gnupg2
系统将提示您输入密码,并在安装Bash时输入您用于Linux用户的密码。 但是,当您输入密码时,您的按键不会显示在“终端”窗口中。 这是一个安全措施,是在命令行提示输入密码时会经常看到的。 即使您没有看到它们,系统也会记录您的击键,所以输入密码后请按ENTER
键,此过程将继续。
接下来,使用curl
命令从项目的网站下载RVM安装脚本。 引导命令的反斜杠确保我们使用常规curl命令,而不是任何改变的别名版本。
\curl -sSL https://get.rvm.io -o rvm.sh
我们来看看与curl
命令相关联的标志:
-
-s
或--silent
标志会静音curl
以便不显示进度表。 -
-S
或--show-error
标志确保curl
在失败时显示错误消息。 -
-L
或--location
标志会告诉curl
来处理重定向。 如果服务器报告请求的页面已经移动到其他位置,它将使用新位置再次自动执行请求。
一旦下载,如果要在应用脚本之前审核脚本的内容,请运行:
less rvm.sh
使用箭头键滚动文件。 使用q
键退出并返回到您的提示。
一旦您熟悉脚本的内容,请执行此命令来安装最新的RVM稳定版本:
cat rvm.sh | bash -s stable
该脚本在您的Linux用户的主目录中创建一个名为.rvm
的新目录。 这是Ruby及其所有相关组件的安装位置,以及用于安装Ruby的rvm
可执行程序。 安装过程会修改您的.bashrc
文件,将.rvm/bin
文件夹添加到PATH
环境变量中,以便您可以轻松地运行rvm
命令。
但是, rvm
命令将无法在当前会话中访问。 所以执行这个命令来解决这个问题:
source ~/.rvm/scripts/rvm
现在使用rvm
命令安装最新版本的Ruby:
rvm install ruby --default
此过程将下载并安装Ruby及其组件,并将此版本的Ruby作为系统将使用的默认版本。 如果您已经安装了一个版本的Ruby,这将避免冲突。
OutputSearching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/16.04/x86_64/ruby-2.4.0.tar.bz2
如果您缺少一些重要的先决条件,安装程序将获取这些先决条件并安装它们:
OutputChecking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system....
Installing required packages: gawk, libssl-dev, zlib1g-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgmp-dev, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev, libgmp-dev, libreadline6-dev..................
Requirements installation successful.
安装脚本可能会要求您输入密码,并且您应该在安装Bash时使用为您的Linux用户创建的密码。
一旦满足前提条件,RVM将下载并安装Ruby:
Outputruby-2.4.0 - #configure
ruby-2.4.0 - #download
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 16.4M 100 16.4M 0 0 4828k 0 0:00:03 0:00:03 --:--:-- 4829k
ruby-2.4.0 - #validate archive
ruby-2.4.0 - #extract
ruby-2.4.0 - #validate binary
ruby-2.4.0 - #setup
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0@global
ruby-2.4.0 - #importing gemset /home/brian/.rvm/gemsets/global.gems..............................
ruby-2.4.0 - #generating global wrappers........
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0
ruby-2.4.0 - #importing gemsetfile /home/brian/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.4.0 - #generating default wrappers........
脚本完成后,将安装最新版本的Ruby。
除了Ruby之外,RVM还安装了一些相关工具,包括irb
,交互式Ruby控制台, rake
,可以运行自动化脚本的程序和gem
,这样可以轻松地安装和更新您可能在自己的项目中使用的Ruby库。
要检查您安装的Ruby版本,请键入以下命令:
ruby -v
这将输出特定版本的Ruby:
Outputruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
为了使RVM在您打开一个新的Bash会话时自动使用其版本的Ruby,您必须将Bash作为登录shell启动,因为RVM会修改.bash_profile
文件,该文件仅在登录shell中被调用。 Bash for Windows快捷方式不会启动登录shell,所以如果要使用Ruby,只需打开一个新的命令提示符并使用bash -l
启动Bash。
如果忘记了,每次启动Bash时,只需运行命令source ~/.rvm/scripts/rvm
。
现在安装了Ruby,让我们编写一个程序来确保一切正常。
第3步 - 创建一个简单的程序
让我们创建一个简单的“Hello,World”程序。 这将确保我们的环境正在运行,让您轻松创建和运行Ruby程序。
为此,使用nano
创建一个名为hello.rb
的新文件:
nano hello.rb
在编辑器中键入以下程序:
puts "Hello, World!"
按CTRL+X
退出编辑器。 提示保存文件时按Y
键。
现在运行程序:
ruby hello.rb
该程序执行并显示其输出到屏幕:
OutputHello, World!
这个简单的程序证明你有一个工作的开发环境。 您可以使用此环境继续探索Ruby并构建更大,更有趣的项目。
结论
随着您的本地机器准备好进行软件开发,您可以通过阅读“ 创建您的第一个Ruby程序 ”教程,继续了解有关Ruby编程的更多信息 。