簡體   English   中英

如何將任務提取到gem並從bin中運行它?

[英]How to extract thor task into gem and run it from bin?

我在一門雷神課上有很多任務。 我想將其提取到my_gem並像bin一樣使用它。 有可能的? 現在,我將此任務移至lib / my_gem / thor / tasks,並將Thorfile添加到gem,然后在my_gem / bin中創建my_gem.rb,但此方法無效。 如果有人知道另一種方式,請幫助。 謝謝!

是的,這是可能的,您需要添加它,或使其與my_gem.gemspec相似(此方法適用於bundle gem創建的bundle gem ,並且已經分配了文件列表):

Gem::Specification.new do |gem|
  # All the other usual stuff, e.g.  gem.files  = `git ls-files`.split($/)
  gem.executables   = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
end

然后,可執行文件應在gem install (或bundle install等)上得到正確處理,並放在您的路徑上。

同樣重要:可執行腳本應該啟動

#!/usr/bin/env ruby

.rb擴展名是可選的,並且對於命令行腳本通常是省略的,因為否則在調用腳本時需要輸入它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM