| commit | e39e0e5064b39f2751a63ff11079908c0e09c996 | [log] [tgz] |
|---|---|---|
| author | Eugene Yakavets <[email protected]> | Tue Apr 22 13:35:59 2025 -0700 |
| committer | Eugene Yakavets <[email protected]> | Tue Apr 22 13:40:27 2025 -0700 |
| tree | 69bddac65e5864e9d58da9e62184e02b6c2f8c04 | |
| parent | 7c0adc43d52d0afad55d6b07436fc407037b9068 [diff] |
Add details to MTLSurfaceData' OutOfMemoryError Bug: 412486300 Test: n/a Change-Id: Ica807350be291c0fa9736c25878cc0c6f76c41d3
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.3 | 17.0.9b1087.7 | 20-Nov-2023 |
| 2023.2 | 17.0.9b1000.46 | 01-Nov-2023 |
| 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
./configureand check its output. It would usually have meaningful advice on how to solve the problem.
Download an image from Docker Hub related to your architecture:
$ docker pull jetbrains/runtime:oraclelinux8_aarch64
or
$ docker pull jetbrains/runtime:oraclelinux8_x64
Create and run a new container from the downloaded image
$ docker run -v $JetBrainsRuntime:/JetBrainsRuntime -it jetbrains/runtime:oraclelinux8_[arch]
where $JetBrainsRuntime is a full path to the directory where the repository was cloned to.
Run these commands in the container:
# yum install java-21-openjdk-devel # cd /JetBrainsRuntime # BOOT_JDK=/usr/lib/jvm/java-21/ ./jb/project/tools/linux/scripts/mkimages_x64.sh 99 nomod
Install the necessary tools, libraries, and headers with:
$ sudo wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | tee /etc/apt/trusted.gpg.d/lunarg.asc
$ sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-noble.list https://packages.lunarg.com/vulkan/lunarg-vulkan-noble.list
$ sudo apt update
$ sudo apt-get -y install openjdk-21-jdk file zip unzip autoconf make build-essential libx11-dev libxext-dev libxrender-dev \
libxtst-dev libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libasound2-dev libspeechd-dev libwayland-dev \
libxkbcommon-x11-0 vulkan-sdk vulkan-utility-libraries-dev
Then run the following:
$ cd /JetBrainsRuntime $ BOOT_JDK=/usr/lib/jvm/java-21-openjdk-amd64 ./jb/project/tools/linux/scripts/mkimages_x64.sh 99 nomod
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/.
If you want to add support of a11y announcing via NVDA screen reader, you will need to bundle the NVDA Controller Client library. You can do it with the following steps:
configure via an additional flag --with-nvdacontrollerclient=<path>. The build system will search the required library files under <path>/<target-arch>.JBR is built with built-in support of JAWS screen reader. If you want to disable it, run configure with the additional flag --disable-jaws-client.
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).