2021再拾ruby以及在centos上安装Ruby3.0 vs code运行ruby 狂踩坑记录

简介: 2021再拾ruby以及在centos上安装Ruby3.0 vs code运行ruby 狂踩坑记录

这几天有点事情在家里,摸到一本Ruby的书,想想已经很久没有用了,再拿起来看看。

首先,下载ruby,这里我们先只说说windows下面的安装,linux下面可以apt-get和yum安装,相对来说依赖网络镜像。


http://rubyinstaller.org/downloads/  到这里找ruby的安装文件,一般来说,可以下载那个小点的文件,不带devkit的那个。如果网络够好,或者使用下载软件下载,可以考虑下载带有devkit的那个。


其次,安装ruby。


--windows 上面安装需要让目录不含中文、不含空格,最好是C:\abc\ruby 这种目录格式。安装之后检查自己的环境变量,将ruby安装目录下的bin目录加入path。


加入之后,重新启动一个cmd,win+R,输入cmd,输入echo %PATH%,查看自己的环境变量是不是已经在后面加上了ruby的path。


这个目录里面有ruby.exe文件和irb.cmd文件,都需要使用。irb是一个交互式命令行工具,像python的python命令一样,可以赋值运算和定义函数,检查一些简单的输入输出。


安装之后,就有了本地的ruby运行环境和命令行交互环境。输入 ruby -v,查看返回值。我装了3.0.0,返回

ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x64-mingw32]

irb会有一个> 提示符开头的环境,cmd中输入irb就进入,输入exit或quit就会退出。

 

装一个ide,IDE方面,rad rails曾经非常好用,试试。


折腾了几下失败了,转到最简单的Notepad++吧,先配置这个。


不过发现现在默认的notepad也不是那么爽就让你随便配置一个编辑器去运行程序了,需要添加一个插件。


我使用的是Notepad++7.8.9版本。先Alt+P 呼叫出插件菜单,进入插件管理,在输入框里面输入NPPEXEC去查找要安装的插件。点击下载安装。网络必须非常理想的情况下,才能下载到这个插件,真是见鬼了。


安装之后,F6呼叫出对话框,输入运行参数,以后编辑完ruby程序后,可以F6、回车快速运行了。但是我发现这个参数似乎对中文的支持仍然不太对,即使在文件里面添加了中文UTF-8支持,仍然不能输出中文。


编写一个带函数的程序hellorb.rb:


# -*- coding:UTF-8 -*-
def new1
    puts "hello 你好"
end
#执行new1函数
new1

F6回车,或者Ctrl+F6,输出是:


hello 浣犲ソ


在本地装完,在CentOS(腾讯云)上也装一个吧。先wget一下3.0版本的tar.gz文件,不然的话,yum会直接安装2.0版本的,有gem更新的问题。


wget https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.0.tar.gz

要从ruby-lang这个网站下载了。下载之后,解压

>tar -xzvf ruby-3.0.0.tar.gz
>./configure
>make
>make install

顺利的话,就能装好一个3.0 然后看看自己的版本

>ruby -v

如果想省事,就用以下命令


$  sudo yum install ruby    #CentOS Fedora RHEL
$sudo apt-get install ruby-full #Debian Ubuntu


====以下是失败记录====

https://sourceforge.net/projects/radrails/

radrails下载网址,现在居然是0.7.2的版本。解压缩到本地,发现有一个radrails的可执行文件,有一个startup.jar。哈。执行radrails,出错,郁闷了。


报错是这样的,在configuration的log文件里面:


!MESSAGE FrameworkEvent.ERROR
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.osgi.framework.internal.core.SystemBundleActivator.start() of bundle system.bundle.

后面还有

java.lang.IllegalStateException
java.lang.NullPointerException

查了一下感觉是Eclipse的插件没有和Java版本配合好,不过我本地安装的确实是Java8版本啊。


尝试vs code,也有问题,最终仅能在terminal里面输入ruby 文件名执行  Ctrl+Shift+` 呼叫出terminal,点击terminal标签,在里面输入。这个有正确的中文输出。gem下载不了啊。更换本地地址也下载不了。


折腾了几下失败了,转到最简单的Notepad++吧,先配置这个。

 

vs code最后使用插件code runner成功运行了,在vs code主界面,点击积木图标(扩展),查找code runner,安装之后可以运行ruby了。




目录
打赏
0
0
0
0
7
分享
相关文章
VSCode安装使用教程,保姆级!
本文介绍了Visual Studio Code(VS Code)的安装和基本使用,包括从官网下载安装包,按照步骤在Windows系统上安装,以及设置个性化主题。此外,还强调了安装插件以增强功能,例如安装简体中文插件,并展示了如何搜索和安装插件。VS Code作为一个免费、开源的轻量级编辑器,其丰富的扩展性和高效性使其成为开发者工具的首选。
docker centos镜像 npm安装包时报错“npm ERR! code ECONNRESET”
通过上述步骤,您可以有效解决在 Docker 中使用 CentOS 镜像安装 npm 包时遇到的 "npm ERR! code ECONNRESET" 错误。希望这些方法能帮助您顺利进行 npm 包的安装。
129 26
|
5月前
|
VScode怎么实现c的运行,这里只讲述一些细节
第一步要设置信任模式,否则你后面搞什么都没有用
64 1
python安装、vscode安装、conda安装:一文搞定Python的开发环境(史上最全)
尼恩架构团队推出了一系列《LLM大模型学习圣经》PDF,旨在帮助读者深入理解并掌握大型语言模型(LLM)及其相关技术。该系列包括Python基础、Transformer架构、LangChain框架、RAG架构及LLM智能体等内容,覆盖从理论到实践的各个方面。此外,尼恩还提供了配套视频教程,计划于2025年5月前发布,助力更多人成为大模型应用架构师,冲击年薪百万目标。
|
7月前
|
vscode——如何在vscode中运行C/C++
vscode——如何在vscode中运行C/C++
85 1
【Mac 系统】解决VSCode用Conda成功安装TensorFlow但程序报错显示红色波浪线Unable to import ‘tensorflow‘ pylint(import-error)
本文解决在Mac系统上使用VSCode时遇到的TensorFlow无法导入问题,原因是Python解析器未正确设置为Conda环境下的版本。通过在VSCode左下角选择正确的Python解析器,即可解决import TensorFlow时报错和显示红色波浪线的问题。
266 9
利用 Xamarin 开展企业级移动应用开发:从用户登录到客户管理,全面演示C#与Xamarin.Forms构建跨平台CRM应用的实战技巧与代码示例
【8月更文挑战第31天】利用 Xamarin 进行企业级移动应用开发能显著提升效率并确保高质量和高性能。Xamarin 的跨平台特性使得开发者可以通过单一的 C# 代码库构建 iOS、Android 和 Windows 应用,帮助企业快速推出产品并保持一致的用户体验。本文通过一个简单的 CRM 示例应用演示 Xamarin 的使用方法,并提供了具体的代码示例。该应用包括用户登录、客户列表显示和添加新客户等功能。此外,还介绍了如何增强应用的安全性、数据持久化、性能优化及可扩展性,从而构建出功能全面且体验良好的移动应用。
76 0
在Ruby世界中寻找你的Web框架灵魂伴侣:Rails vs Sinatra
【8月更文挑战第31天】在Ruby的世界里,选择Web框架如同挑选衣物,需根据场合和需求。Rails与Sinatra是两大热门框架,前者以其“约定优于配置”理念和全面的功能成为企业级应用的首选;后者则以轻量级和灵活性著称,适用于快速原型开发和小规模应用。通过对比两者特性,如Rails的MVC架构与Sinatra的简洁API,我们可以看到它们各有所长。选择合适的框架,如同找到旅途中的最佳伙伴,让开发之路更加顺畅愉悦。这场探索之旅教会我们,没有绝对的好坏,只有最适合的选择。
72 0
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题
【Azure Developer】VS Code运行Java 版Azure Storage SDK操作Blob (新建Container, 上传Blob文件,下载及清理)
【Azure Developer】VS Code运行Java 版Azure Storage SDK操作Blob (新建Container, 上传Blob文件,下载及清理)
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等