我有一个ruby gem文件,这是实际的Logstash插件,我还有另一个gem,Logstash插件gem需要。我如何将宝石放入我的Logstash中,所以当我这样做时
require "gem_name"
字符串它没有说“找不到gem_name”?
stszievb1#
这对我很有效:
path/to/logstash/logstash-plugin install --no-verify --local localxxx.gem
字符串确保gem文件(localxxx.gem)位于logstash目录中。
nwlls2ji2#
和往常一样,在插件中包含本地gem作为依赖项。然后,在安装插件之前,在Logstash中安装本地依赖,如下所示:
/path/to/logstash/logstash-plugin install --no-verify /path/to/local/gem
字符串然后安装你的插件
/path/to/logstash/logstash-plugin install /path/to/local/plugin
型
vaqhlq813#
在您的gemspec(在名为 plugin-name.gemspec 的插件文件夹中)中添加一行依赖项。例如,如果你的插件需要rest-client:
s.add_runtime_dependency "rest-client", '>= 1.8.0'
字符串你可以在这里找到一个有效的gemspec文件的例子。看看你在rubygems.org上选择的插件,找到有效的版本声明。在声明了所有依赖项后,运行bundle install,使用gem build your-plugin-name.gemspec构建gem。然后安装并测试它:bin/logstash-plugin install logstash-filter-mypluginname.gem的值。我强烈推荐RVM来避免ruby版本问题。您可能还想考虑坚持使用this tutorial,这会使它变得容易得多。如果你需要进一步的帮助,请告诉我。
bundle install
gem build your-plugin-name.gemspec
bin/logstash-plugin install logstash-filter-mypluginname.gem
3条答案
按热度按时间stszievb1#
这对我很有效:
字符串
确保gem文件(localxxx.gem)位于logstash目录中。
nwlls2ji2#
和往常一样,在插件中包含本地gem作为依赖项。然后,在安装插件之前,在Logstash中安装本地依赖,如下所示:
字符串
然后安装你的插件
型
vaqhlq813#
在您的gemspec(在名为 plugin-name.gemspec 的插件文件夹中)中添加一行依赖项。例如,如果你的插件需要rest-client:
字符串
你可以在这里找到一个有效的gemspec文件的例子。看看你在rubygems.org上选择的插件,找到有效的版本声明。
在声明了所有依赖项后,运行
bundle install
,使用gem build your-plugin-name.gemspec
构建gem。然后安装并测试它:bin/logstash-plugin install logstash-filter-mypluginname.gem
的值。我强烈推荐RVM来避免ruby版本问题。您可能还想考虑坚持使用this tutorial,这会使它变得容易得多。如果你需要进一步的帮助,请告诉我。