Skip to content

Commit 24be777

Browse files
Merge pull request #1289 from jasonrandrews/review
Update Java information
2 parents be1e8fe + 36159ef commit 24be777

File tree

3 files changed

+93
-27
lines changed

3 files changed

+93
-27
lines changed

content/install-guides/java.md

Lines changed: 70 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,13 @@ Below are some of the common methods to install Java. This includes both the Jav
3232

3333
Pick the one that works best for you.
3434

35-
## Install Java using the Linux package manager
35+
{{% notice Note %}}
36+
The Java Technology Compatibility Kit (TCK) is a test suite that verifies whether a Java implementation conforms to the Java SE Platform Specification. It's a crucial tool for ensuring that Java applications can run consistently across different platforms and implementations.
37+
38+
Check the [OCTLA Signatories List](https://openjdk.org/groups/conformance/JckAccess/jck-access.html) to see who has been granted access to the TCK.
39+
{{% /notice %}}
40+
41+
## Can I install Java using the Linux package manager?
3642

3743
For distributions using `apt` - including Debian and Ubuntu:
3844

@@ -55,7 +61,15 @@ sudo pacman -S jdk-openjdk
5561
sudo pacman -S jre-openjdk
5662
```
5763

58-
## Install Java using Amazon Corretto
64+
## Can I install Java using Snap?
65+
66+
For Linux distributions with `snap` you can install Java using:
67+
68+
```console
69+
sudo snap install openjdk
70+
```
71+
72+
## How do I install Amazon Corretto?
5973

6074
Amazon Corretto is a no-cost distribution of the Open Java Development Kit (OpenJDK). It is maintained and supported by Amazon Web Services (AWS).
6175

@@ -69,15 +83,64 @@ sudo apt-get update; sudo apt-get install -y java-21-amazon-corretto-jdk
6983

7084
More installation options for Corretto are available in the [Amazon Corretto 21 Guide for Linux](https://docs.aws.amazon.com/corretto/latest/corretto-21-ug/linux-info.html)
7185

72-
## Install Java using Snap
86+
## How do I install the Microsoft Build of OpenJDK?
7387

74-
For Linux distributions with `snap` you can install Java using:
88+
The Microsoft Build of OpenJDK is a no-cost, open source distribution of OpenJDK. It includes Long-Term Support (LTS) binaries for Java 11 and Java 17 and runs on Arm Linux.
89+
90+
{{% notice Note %}}
91+
The Arm architecture is not available in the repositories for the `apt` package manager.
92+
{{% /notice %}}
93+
94+
You can download a tar.gz file from [Download the Microsoft Build of OpenJDK](https://learn.microsoft.com/en-gb/java/openjdk/download)
95+
96+
For example:
7597

7698
```console
77-
sudo snap install openjdk
99+
wget https://aka.ms/download-jdk/microsoft-jdk-21.0.4-linux-aarch64.tar.gz
100+
```
101+
102+
Extract the contents of the file:
103+
104+
```console
105+
tar xvf microsoft-jdk-21.0.4-linux-aarch64.tar.gz
78106
```
79107

80-
## Is there a way to install Java from the official website?
108+
Move the contents to a directory of your choice:
109+
110+
```console
111+
sudo mv jdk-21.0.4+7/ /usr/local
112+
```
113+
114+
Set up environment variables to locate your installation:
115+
116+
```console
117+
export JAVA_HOME=/usr/local/jdk-21.0.4+7
118+
export PATH=$JAVA_HOME/bin:$PATH
119+
```
120+
121+
Add the environment variables to your `~/.bashrc` file to set them permanently.
122+
123+
For more information about the available versions and supported platforms refer to [About the Microsoft Build of OpenJDK](https://learn.microsoft.com/en-gb/java/openjdk/overview).
124+
125+
## How do I install Eclipse Temurin from the Adoptium Working Group?
126+
127+
The Adoptium Working Group promotes and supports high-quality, TCK certified runtimes and associated technology for use across the Java ecosystem.
128+
129+
Eclipse Temurin is the name of the OpenJDK distribution from Adoptium.
130+
131+
To install Temurin on Ubuntu run:
132+
133+
```console
134+
sudo apt install -y wget apt-transport-https gpg
135+
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null
136+
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
137+
sudo apt update
138+
sudo apt install temurin-17-jdk -y
139+
```
140+
141+
For more information about the available versions and supported platforms refer to [Temurin documentation](https://adoptium.net/docs/).
142+
143+
## How do I install Java from Oracle?
81144

82145
You can download Java from the [Oracle website](https://www.oracle.com/java/technologies/javase-downloads.html) and install it manually. Look for the files with ARM64 in the description.
83146

@@ -159,7 +222,7 @@ javac 21.0.4
159222

160223
## Which version of Java should I use for Arm Linux systems?
161224

162-
It’s important to ensure that your version of Java is at least 11.0.9. There are large performance improvements starting from version 11.0.9. Since then, Java performance has steadily increased over time and newer versions will provide better performance.
225+
For performance and security, it’s important to ensure that your version of Java is at least 11.0.12. Earlier versions lack significant performance improvements. Java performance has steadily increased over time and newer versions will provide better performance.
163226

164227
## Which flags are available for tuning the JVM?
165228

content/learning-paths/servers-and-cloud-computing/migration/java.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,9 @@ The default can be changed on the command line with either `-XX:ThreadStackSize=
119119

120120
Usually, there's no need to change the default stack size, because the thread stack will be committed as it grows.
121121

122-
There is one situation to be aware of. If Transparent Huge Pages (THP) are set to always, the page size matches the default stack size. In this case the full stack size is commit to memory. If you have a very high number of threads the memory usage will be large.
122+
## Transparent Huge Pages
123+
124+
If Transparent Huge Pages (THP) are set to always, the page size matches the default stack size. In this case, the full stack size is committed to memory. If you have a very high number of threads the memory usage will be large.
123125

124126
To mitigate this issue, you can either manually change the stack size using the flags or change the THP setting to madvise.
125127

0 commit comments

Comments
 (0)