JetBrains Runtime is a fork of OpenJDK available for Windows, Mac OS X, and Linux. It supports enhanced class redefinition (DCEVM), features optional JCEF, a framework for embedding Chromium-based browsers, includes a number of improvements in font rendering, keyboards support, windowing/focus subsystems, HiDPI, accessibility, and performance, provides better desktop integration and bugfixes not yet present in OpenJDK.
NOTE: This is a development branch that is periodically synchronized with the OpenJDK master branch.
Release builds are based on these branches:
Download the latest releases of JetBrains Runtime to use with JetBrains IDEs. The full list can be found on the releases page.
IDE Version | Latest JBR | Date Released |
---|---|---|
2023.1 | 17.0.6-b829.5 | 01-Mar-2023 |
2022.3 | 17.0.6-b653.34 | 28-Feb-2023 |
2022.2 | 17.0.6-b469.82 | 06-Mar-2023 |
IDE Version | Latest JBR | Date Released |
---|---|---|
2022.1 | 11_0_16-b2043.64 | 10-Nov-2022 |
2021.3 | 11_0_14_1-b1751.46 | 21-Feb-2022 |
2021.2 | 11_0_13-b1504.49 | 15-Nov-2021 |
2021.1 | 11.0.11+9-b1341.60 | 15-Jun-2021 |
2020.3 | 11_0_10-b1145.115 | 21-Jun-2021 |
-XX:+AllowEnhancedClassRedefinition
.git config --global core.autocrlf input git clone [email protected]:JetBrains/JetBrainsRuntime.git cd JetBrainsRuntime git checkout jbr21
git config --global core.autocrlf false git clone [email protected]:JetBrains/JetBrainsRuntime.git cd JetBrainsRuntime git checkout jbr21
Here are quick per-platform instructions for those who can't wait to get started. Please refer to OpenJDK build docs for in-depth coverage of all the details.
TIP: To get a preliminary report of what's missing, run
./configure
and check its output. It would usually have meaningful advice on how to solve the problem.
Create a container:
$ cd jb/project/docker $ docker build . ... Successfully built 942ea9900054
Run these commands in the new container:
$ docker run -v `pwd`../../../../:/JetBrainsRuntime -it 942ea9900054 # cd /JetBrainsRuntime # sh ./configure # make images CONF=linux-x86_64-normal-server-release
Install the necessary tools, libraries, and headers with:
$ sudo apt-get install autoconf make build-essential libx11-dev libxext-dev libxrender-dev libxtst-dev \ libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev
Get Java 19 (for instance, Azul Zulu Builds of OpenJDK 19).
Then run the following:
$ cd JetBrainsRuntime $ git checkout main $ sh ./configure $ make images
This will build the release configuration under ./build/linux-x86_64-server-release/
.
autoconf
, binutils
, cpio
, diffutils
, file
, gawk
, gcc-core
, make
, m4
, unzip
, zip
.From the command line:
"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64 "c:\Program_Files\cygwin64\bin\mintty.exe" /bin/bash -l
The first command sets up environment variables, the second starts a Cygwin shell with the proper environment.
In the Cygwin shell:
$ cd JetBrainsRuntime $ git checkout main $ bash configure --with-toolchain-version=2019 $ make images
This will build the release configuration under ./build/windows-x86_64-server-release/
.
Install the following:
autoconf
via Homebrew.From the command line:
$ cd JetBrainsRuntime $ git checkout main $ sh ./configure $ make images
This will build the release configuration under ./build/macosx-x86_64-server-release/
.
You can use CLion to develop native parts of the JetBrains Runtime and IntelliJ IDEA for the parts written in Java. Both require projects to be created.
Run
$ make compile-commands
in the git root and open the resulting build/.../compile_commands.json
file as a project. Then use Tools | Compilation Database | Change Project Root
to point to git root of this repository.
See also this detailed step-by-step tutorial for all platforms: How to develop OpenJDK with CLion.
Run
$ sh ./bin/idea.sh
in the git root to generate project files (add --help
for options). If you have multiple configurations (for example, release
and fastdebug
), supply the --conf <conf_name>
argument. Then open the git root directory as a project in IDEA.
We are happy to receive your pull requests! Before you submit one, please sign our Contributor License Agreement (CLA).