首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ruby savon jruby的问题

ruby savon jruby的问题
EN

Stack Overflow用户
提问于 2012-10-05 23:00:00
回答 1查看 898关注 0票数 1

我正在尝试使用savon Gem,以便与webServices进行交互。所以我安装了它,看起来安装是正常的:

代码语言:javascript
复制
gem list savon
*** LOCAL GEMS ***
savon (1.2.0)

我可以用这个简单的命令来测试它:

代码语言:javascript
复制
ruby -rubygems -e 'require "savon"'

(多亏了这篇技巧http://wiki.mccune.org.uk/index.php/Backtrack,我没有更多的错误了)

当我想使用一个需要savon的.rb脚本时,就会出现这个问题:

代码语言:javascript
复制
jruby -S buby -i -B /pentest/web/burpsuite/burpsuite_v1.4.01.jar -r /home/fred/soapAtk2.rb 

/usr/lib/jruby//lib/ruby/site_ruby/shared/builtin/javasupport/core_ext/object.rb:75 warning: already initialized constant StartBurp
Your JRE appears to be OpenJDK. 
Burp has not been fully tested on this platform and you may experience problems.
Loading: "/home/fred/soapAtk2.rb"

/usr/lib/jruby//lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in **`require': no such file to load -- savon** (LoadError)
    from /usr/lib/jruby//lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
    from /home/fred/soapAtk2.rb:3
    from /home/fred/soapAtk2.rb:31:in `require'
    from /usr/lib/jruby//lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
    from /usr/lib/jruby/lib/ruby/gems/1.8/gems/buby-1.3.1-java/bin/buby:63
    from /usr/lib/jruby/lib/ruby/gems/1.8/gems/buby-1.3.1-java/bin/buby:63:in `each'
    from /usr/lib/jruby/lib/ruby/gems/1.8/gems/buby-1.3.1-java/bin/buby:63
    from /usr/lib/jruby/lib/ruby/gems/1.8/gems/buby-1.3.1-java/bin/buby:19:in `load'
    from /usr/lib/jruby/bin/buby:19

似乎有一个环境问题,但我想不出如何解决它:-/

代码语言:javascript
复制
ruby -r rubygems -e "p Gem.path"

["/root/.gem/ruby/1.9.2", "/usr/lib/ruby/gems/1.9.2"]

# gem content savon

/var/lib/gems/1.9.2/gems/savon-1.2.0/.gitignore

/var/lib/gems/1.9.2/gems/savon-1.2.0/.rspe
...
...

其他信息

代码语言:javascript
复制
# ruby -v
ruby 1.9.2dev (2010-07-02) [x86_64-linux]
# gem -v
1.3.7

有没有人遇到过同样的问题(我运行的是backtrack5上一版)

谢谢‘

EN

回答 1

Stack Overflow用户

发布于 2012-10-06 11:59:44

看起来你有两颗红宝石,系统红宝石(1.9.2dev)和jruby。当您运行rubygem时,它会获取系统ruby,而jruby -S buby命令则会获取jruby。

如果您运行以下命令:

代码语言:javascript
复制
jruby -rubygems -e 'require "savon"'

这很可能会失败。

要在jruby实例上安装savon,请运行:

代码语言:javascript
复制
jruby -S gem install savon

这应该可以解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12748925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档