我正在尝试为logstash开发一个输入插件。
我已经使用过这个教程
http://blog.eagerelk.com/how-to-write-a-logstash-plugin/
我尝试安装"捆绑"时遇到的问题使用"捆绑安装"
- 这是错误消息
您的Ruby引擎是ruby,但您的Gemfile指定了jruby
- Gemfile:
来源' https://rubygems.org' ruby' 2.2.0',:engine => ' jruby',:engine_version => ' 2.3.1' gemspec
- ruby -v:
ruby 2.2.0p0(2014-12-25修订版49005)[x86_64-darwin16]
- jruby -v:
jruby 9.1.8.0(2.3.1)2017-03-06 90fc7ab Java HotSpot(TM)64位服务器VM 25.92-b14 on 1.8.0_92-b14 + jit [darwin-x86_64]
我在这里做错了什么?
答案 0 :(得分:1)
由于您使用的是rbenv
,因此以下是一些不错的故障排除步骤:
PATH
包含/path/to/your/home/directory/.rbenv/shims
或某些类似的变体。eval "$(rbenv init -)"
文件中还需要.bash|zsh|whateverrc
。.ruby-version
文件。切换到您正在处理的项目的目录并调用cat .ruby-version
。
rbenv install --list
,但最新版本(来自我的本地ruby-build
)是jruby-9.1.7.0
rbenv install
。如果您不想制作文件/想跳过此步骤,请运行rbenv install jruby-9.1.7.0
rbenv rehash; bundle
现在应该可行了。 答案 1 :(得分:0)
看起来您的捆绑包正在尝试使用系统的默认Ruby版本而不是使用JRuby。
我建议您卸载之前安装的所有Ruby,以便再次清理系统。
之后,请确保PATH
正确无误
如果您正在使用bash,则~/.bashrc
或~/.bash_profile
应具有以下命令:
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
如果你正在使用zsh,这些命令必须位于~/.zshrc
。
之后,输入您的项目目录并创建一个新文件.ruby-version
:
echo 'jruby-9.1.7.0' > .ruby-version
注意:您可以使用命令rbenv install --list
查看其他可用版本。
最后,离开目录,再次输入,然后运行以下命令:
rbenv install jruby-9.1.7.0
gem install bundler # to install the bundler gem in the context of your new JRuby 9.1.7.0
bundle install # to install the gems listed in your Gemfile