如何将 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 的实现,同样可以实现可移植性的功能

相关推荐
隔窗听雨眠5 分钟前
ORM框架选型指南:MyBatis与Hibernate的全面对比
java·开发语言·数据库
j7~12 分钟前
【C++】类和对象(上)--带你全面理解类和对象的概念,以及this指针的理解和相关面试题
java·开发语言·封装·this指针·类的实例化·访问限定符·类的命名
于先生吖14 分钟前
同城物流创业项目,Java源码搭建多车型搬家拉货、就近配货预约小程序
java·开发语言·小程序
码不停蹄的玄黓15 分钟前
Java 异常分类
java·开发语言
江湖中的阿龙19 分钟前
23种设计模式
java·开发语言·设计模式
可可嘻嘻大老虎21 分钟前
SpringBoot拦截器防重复提交实战
java·spring boot·后端
RainCityLucky25 分钟前
Java Swing 自定义组件库分享(十一)
java·笔记·后端
ch.ju26 分钟前
Java Programming Chapter 4——The set method assigns a value to the property.
java·开发语言
Sam_Deep_Thinking27 分钟前
SaaS多租户业务差异化:扩展点机制的设计与实现
java·架构
我登哥MVP30 分钟前
Spring Boot 从“会用”到“精通”:Rest风格原理
java·spring boot·后端·spring·maven·intellij-idea·mybatis