Skip to content


Subversion checkout URL

You can clone with
Download ZIP


hudson gem dependency prevents install in jruby 1.5.1 #4

glongman opened this Issue · 5 comments

4 participants


iMac-007:online glongman$ gem install hudson
Building native extensions. This could take a while...
ERROR: Error installing hudson:
ERROR: Failed to build gem native extension.

    /Users/glongman/.rvm/rubies/jruby-1.5.1/bin/jruby extconf.rb
    WARNING: JRuby does not support native extensions or the `mkmf' library.
             Check for alternatives.
    extconf.rb:5: undefined method `<<' for nil:NilClass (NoMethodError)

    Gem files will remain installed in /Users/glongman/.rvm/gems/jruby-1.5.1/gems/yajl-ruby-0.7.8 for inspection.
    Results logged to /Users/glongman/.rvm/gems/jruby-1.5.1/gems/yajl-ruby-0.7.8/ext/gem_make.out

Question: We're exploring building our project using hudson. Our products are deployed as war files w/warbler. Many of our tests must run in jruby. Are we screwed?


Let me start by saying that you are definitely not screwed (at least as far as hudson.rb goes. I can't say otherwise :))

hudson.rb is just a ruby command line for interacting with hudson server(s). You can use it to manage a hudson server as well as control with a running instance, but all it does under the covers is use the JSON api. In fact, you don't strictly need the hudson gem to use hudson to build ruby projects at all. Instead, you could just download the warfile and run it in your servlet container of choice.

Our goal is to make it painless to deploy and use hudson, especially with ruby projects.

The actual builds that hudson performs only need a shell environment. What you have in that shell is entirely up to you.

That said, hudson.rb should probably run on jruby, so this is very much a valid issue. It looks like the yajl extension we use to parse the JSON from the hudson server is c-based rubies only.


Awesome. Thanks so much for the quick answer!


Yep, it should definitely run on all the rubies. Sorry that this version didn't.


As an aside, we would have known this pre-release if we do issue #5


Close this issue since there is nothing to be done on this.

@yyuu yyuu closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.