gen_java: an easy way to include java in erlang applications

Joe DeVivo
Erlanger at CHEF

This talk is about my open-sourced library for including Java libraries in Erlang, gen_java ( It will start off with how to use it, but since that's pretty simple, we'll then go into how it does it, and what kinds of tricks I needed to get it done. We'll talk about gen_server and receiving IO from ports. We'll talk about faking responses to erlang's rpc:call function on the java side. We'll also even talk about basic parse_transforms and how we use this project at CHEF. It will include some java, and coverage of JInterface as well. If there’s time we’ll also talk about how it could be adapted for other languages, or specifically, Haskell.

Talk objectives:

I want to get the word out about this java interop library, to save people from having to reinvent it every time. I also learned a few things along the way, that I'm happy to share. "Anyone who needs just a little java in their Erlang lives.

Target audience: 

  • Language interoperability enthusiasts
  • Folks who aren't afraid to see how the sausage is made


Working in Erlang for years at Basho and CHEF, Joe finally had an excuse to write a gen_fsm from scratch for Chatterbox. Joe's an Emacs poseur, who likes hacking Erlang with EDTS, but occasionally runs scared back to SublimeText 2. Maybe you've heard of him.

Joe's been working with Erlang primarily since 2012, at Basho and now CHEF. 

Twitter: @joedevivo

Github: joedevivo

Back to conference page