# Getting Discourse running on JRuby

**URL:** <https://meta.discourse.org/t/getting-discourse-running-on-jruby/81273>\
**Category:** Development\
**Created:** [February 23, 2018, 12:14am UTC](https://meta.discourse.org/t/getting-discourse-running-on-jruby/81273 "2018-02-23T00:14:59Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![headius](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/headius/32/120277_2.png) [@headius](https://meta.discourse.org/u/headius)\
**Post date:** [February 23, 2018, 7:12pm UTC](https://meta.discourse.org/t/getting-discourse-running-on-jruby/81273/5 "2018-02-23T19:12:51Z")

</div>

> [@sam](#):
>
> Oh, we should bench this if perf is the same we can move to xorcist

The fast\_xor README actually says to use xorcist. I believe the code was simply moved there and expanded to support JRuby.

Here’s the complete list of exts with status as I know it today.

- bootsnap: [JRuby support · Issue #129 · rails/bootsnap · GitHub](https://github.com/Shopify/bootsnap/issues/129)
- fast\_blank: Should no longer be transitive dep of onebox, could be MRI-only in Gemfile, or could support JRuby. [JRuby support by headius · Pull Request #21 · SamSaffron/fast\_blank · GitHub](https://github.com/SamSaffron/fast_blank/pull/21)
- fast\_xor: Switch to xorcist. [GitHub - fny/xorcist: Blazing-fast-cross-platform-monkey-patch-free string XOR · GitHub](https://github.com/fny/xorcist)
- fast\_xs: This would be an easy port, or could possibly be omitted. [JRuby support · Issue #6 · brianmario/fast\_xs · GitHub](https://github.com/brianmario/fast_xs/issues/6)
- cppjieba\_rb: [JRuby support using jieba-analysis library for Java · Issue #1 · fantasticfears/cppjieba\_rb · GitHub](https://github.com/fantasticfears/cppjieba_rb/issues/1)
- libv8: Transitive dependency of mini\_racer. Replace with therubyrhino or the Nashorn equivalent?
- nokogumbo: Transitive dependency of sanitize. Library wrapper for Gumbo HTML5 parser. Probably could use FFI effectively…it’s very small. [JRuby support · Issue #24 · rubys/nokogumbo · GitHub](https://github.com/rubys/nokogumbo/issues/24)
- oj: Get Tom Enebo (or help him) to finish his port: [GitHub - enebo/oj: Optimized JSON · GitHub](https://github.com/enebo/oj)
- pg: Use pg\_jruby and improve it as needed.
- rinku: [JRuby support · Issue #75 · vmg/rinku · GitHub](https://github.com/vmg/rinku/issues/75)
- unicorn: Only needed on MRI.

I updated the gist I linked above, now excluding or replacing all the gems above. With these changes, bundle install completes.

I have no idea if Discourse actually _works_ yet though 🙂

---

_[View the full topic](https://meta.discourse.org/t/getting-discourse-running-on-jruby/81273)._
