在定制的宝石中遇到红宝石宝石依赖项的错误

时间:2018-09-17 20:33:13

标签: ruby rubygems

我对创建红宝石和宝石并不陌生,我们正在尝试构建一个简单的宝石,并且我在gemspec中给出了以下依赖关系:

spec.add_runtime_dependency "csv"
spec.add_runtime_dependency "fileutils"
spec.add_runtime_dependency "json"
spec.add_runtime_dependency "rest-client"
spec.add_runtime_dependency "openssl"

Gem安装失败,并出现以下错误-找不到有效的gem'openssl'(> = 0)。 json和rest-client也会发生相同的错误,但是当我执行gem列表时,可以看到以下内容:

csv (3.0.0)
fileutils (1.1.0)
json (2.1.0, default: 2.0.4)
openssl (2.1.1, default: 2.0.5)
rest-client (2.1.0.rc1)

我尝试了一些操作,例如卸载以上版本的rest-client和安装版本2.0.2,这时我不再看到rest-client的错误。有人可以帮助我如何定义将考虑默认版本以及2.1.0.rc1之类的版本的依赖项吗?

谢谢

2 个答案:

答案 0 :(得分:0)

您应该像在常规的ruby应用程序中那样创建一个Gemfile,并在其中添加这些gem。完成此操作后,运行bundle install并重新安装该应用程序。这应该可以解决您的问题!

希望这会有所帮助,

答案 1 :(得分:0)

您是否已尝试指定要使用的版本?例如:

spec.add_runtime_dependency "csv"
spec.add_runtime_dependency "fileutils"
spec.add_runtime_dependency "json", "~> 2.04"
spec.add_runtime_dependency "rest-client", "~> 2.1.0.rc1"
spec.add_runtime_dependency "openssl", "~> 2.05"