如何在一个简单的非 Rails 项目中使用特定的 Ruby 版本
Posted
技术标签:
【中文标题】如何在一个简单的非 Rails 项目中使用特定的 Ruby 版本【英文标题】:How to use a specific Ruby version in a simple non-Rails project 【发布时间】:2020-09-04 20:55:38 【问题描述】:我想在我的简单非 Rails 项目中使用 Ruby 2.7.1。我以评论开始我的主文件:
#!/usr/bin/ruby
我通过 RVM 安装了 Ruby 2.7.1,并且设置正确:
$ rvm list
ruby-2.6.1 [ x86_64 ]
=* ruby-2.7.1 [ x86_64 ]
当我运行我的程序时,它使用 Ruby 2.6.1。
在/usr/bin/
我只有ruby
和ruby2.5
文件。
如何强制我的程序使用 Ruby 2.7.1 或仅使用 RVM 当前调用的版本及其默认值?
我使用的是 Ubuntu 18.04。
【问题讨论】:
在您的文件夹中搜索所有/CTRL/CMD+ SHIFT + F
并查找2.6.1
。它可能是在某个时候创建的,并且默认使用其中的内容。
试试#!/usr/bin/env ruby
。
@anothermh - 谢谢,它有效! :)
【参考方案1】:
在脚本顶部使用它:
#!/usr/bin/env ruby
这将导致脚本检查运行该实用程序的用户的环境以找到合适的 Ruby 解释器。来自env
上的***页面:
env 是一个用于 Unix 和类 Unix 操作系统的 shell 命令。它用于打印环境变量列表或在更改的环境中运行另一个实用程序,而无需修改当前存在的环境。使用 env,可以添加或删除变量,并且可以通过为它们分配新值来更改现有变量。
在实践中,env 还有另一个常见用途。 shell 脚本经常使用它来启动正确的解释器。在这种用法中,环境通常不会改变。
这意味着您可以将它用于任何类型的解释器,例如 perl、python、sh 等。
【讨论】:
以上是关于如何在一个简单的非 Rails 项目中使用特定的 Ruby 版本的主要内容,如果未能解决你的问题,请参考以下文章
在 Rails 4.1 中将页面特定的 jQuery 代码放在哪里?