You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过gemspec文件安装Ruby gem依赖(不使用Bundler)

不借助Bundler,通过gemspec安装Ruby Gem依赖的方法

目前gem命令本身没有直接读取gemspec并一键安装所有依赖的内置功能,但可以通过Ruby脚本快速实现,无需手动解析gemspec内容:

  1. 进入gem项目目录后,执行以下命令安装运行时依赖:
ruby -e "require 'rubygems'; spec = Gem::Specification.load('my_gem.gemspec'); spec.dependencies.select { |d| d.type == :runtime }.each { |d| system 'gem install', d.name, '-v', d.requirement.to_s }"
  1. 如果需要同时安装开发依赖,使用这条命令:
ruby -e "require 'rubygems'; spec = Gem::Specification.load('my_gem.gemspec'); spec.dependencies.each { |d| system 'gem install', d.name, '-v', d.requirement.to_s }"

简化操作

如果不想每次输入长命令,可以给shell设置别名:

alias gem-install-spec='ruby -e "require '\''rubygems'\''; spec = Gem::Specification.load(ARGV[0]); spec.dependencies.each { |d| system '\''gem install'\'', d.name, '\''-v'\'', d.requirement.to_s }"'

之后只需执行以下命令就能一键安装所有依赖:

gem-install-spec my_gem.gemspec

原理说明

这个脚本通过Ruby内置的Gem::Specification类加载gemspec文件,直接提取其中定义的依赖项,再调用gem install命令逐个安装,逻辑和安装.gem文件时的依赖处理完全一致。

内容的提问来源于stack exchange,提问作者Chris Reuter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 15:47:09