Bring the Power of R
to Java

Renjin is the JVM-based interpreter for the R language

Seamless integration between R and Java

  • Embed Renjin directly in your Java project as a library
  • Zero-overhead data sharing between R and Java
  • Pure-Java versions of CRAN and BioConductor packages
  • Multi-threaded execution

Quick start with Java

// Add Renjin as a dependency to pom.xml or build.gradle

RenjinScriptEngine engine = new RenjinScriptEngine();

// Evaluate R inline

engine.eval("df <- data.frame(x = 1:10, y = rnorm(n = 10))");
engine.eval("print(lm(y ~ x, df))");

// Use CRAN and BioConductor packages

engine.eval("ggplot2::qplot(x, y, data = df)")

// Evaluate external R script

engine.eval(new java.io.FileReader("script.R"));
Read the complete guide ⟶

Deploy R code faster and hassle-free

Learn how OpsFactor uses Renjin to deploy their supply-chain optimization system to Amazon Beanstalk, combining an R-language model built on the forecast package with a Java web application.

Read the case study ⟶
OpsFactor Logo
Workstation running icCube

Extend your Java application with the power of R

Business intelligence vendor icCube relies on Renjin empower their customers with the rich capabilities of the R language for statistical analysis.

Renjin is licensed under the GPL v2, but can be used to build plugins for commercial software applications.

Read the case study ⟶

Bring the Power of R
to Java

Ready to get started?

Quick start with Java Join our mailing list