gpt4 book ai didi

ruby - 命令行实用程序 gems 是如何工作的?

转载 作者:数据小太阳 更新时间:2023-10-29 07:45:10 24 4
gpt4 key购买 nike

像“rails”、“rspec”和“cucumber”这样的 gem 如何允许用户使用以他们的 gem 名称开头的命令??

rails new project
rspec spec
cucumber features

并不是所有的 gem 都有这个能力。例如,当我输入 json 时,即使我已经安装了它,我也会得到

-bash: json: command not found

最佳答案

Gem 的 .gemspec 文件如下所示:

Gem::Specification.new do |s|
s.name = "haml"
s.version = "3.1.8"

....

s.executables = ["haml", "html2haml"]
end

这意味着当安装此 Gem(在本例中为 haml-3.1.8)时,还将为文件 hamlhtml2haml 创建可执行文件(也称为“binstubs”)的链接 位于 gem 的 bin/目录中。

在这种情况下,例如文件 bin/haml 可能如下所示:

#!/usr/bin/env ruby
require 'rubygems'
require 'haml'

puts Haml::VERSION

关于ruby - 命令行实用程序 gems 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20069243/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com