如何将 ruby 打包类似于jdk在另一台相同架构的机器上面开箱即用

需求

目前工作中使用到了ruby作为java 项目的中转语言,但是部署ruby的时候由于环境的不同会出现安装依赖包失败的问题,如何找到一种开箱即用的方式类似于java 中的jdk内置jvm这种方式

解决

TruffleRuby 完美解决问题,TruffleRuby 是使用 Truffle 语言实现框架和 GraalVM 编译器在 GraalVM 上构建的 Ruby 编程语言的高性能实现。TruffleRuby 是 GraalVM 的一部分,GraalVM 是一个高性能多语言编程平台。

使用方法

1、找到对应机器的架构

oracle truffleruby

由于我使用的centos7,使用的是 truffleruby-23.1.1-linux-amd64.tar.gz

2、解压到指定目录,如果需要安装依赖进入 bin 目录下面 gem install 即可

3、移植

如果想要在另一台机器上面直接使用此台机器上面安装的依赖,将其打成完整的tar包,将该tar包复制过去解压即可

拓展

GraalVM 还有Python 的实现,同样可以实现可移植性的功能

相关推荐
文丑颜不良啊1 小时前
LeetCode2161~2180题目解析
java·leetcode
文丑颜不良啊3 小时前
LeetCode2141~2160题目解析
java·leetcode
LabVIEW开发3 小时前
LabVIEW 连接板:28 个端子怎么排,优先级怎么定
java·算法·labview
天天被压力3 小时前
【A股分钟级高频数据完全手册 #07】北交所历史分钟K线接口:京市Pro版分时批量
java·人工智能·python
天天被压力3 小时前
【A股分钟级高频数据完全手册 #08】股票日、分时数据接口对比:普通分时与Pro版差异实测
java·人工智能·python
特立独行的猫A4 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
金銀銅鐵4 小时前
从一个类名到一张类图:用反射自动生成 PlantUML
java·后端·uml
nice_lcj5204 小时前
Java 并发容器入门:ConcurrentHashMap、CopyOnWriteArrayList、阻塞队列
java·面试·并发编程·阻塞队列·concurrenthashmap·copyonwritearraylist
微小的鱼4 小时前
Linux的渲染与显示系统链路
android·java·linux
若亦_5 小时前
Java中关于this的三种用法
java·开发语言·intellij-idea