Linux (Ubuntu)¶
Übersicht¶
Dieses Skript installiert automatisch Java 25 auf Ubuntu mithilfe des offiziellen APT-Repositorys.
Download¶
Voraussetzungen¶
Unterstützte Systeme:
Ubuntu (alle aktuell unterstützten Versionen)
Ausführung:
sudo ./install_java25_ubuntu.sh
Was das Skript macht¶
1. Alte Java-Pakete entfernen¶
Das Skript entfernt alle vorhandenen Java-Installationen:
# Find all installed Java packages
dpkg-query -W -f='${Package}\n' 2>/dev/null \
| grep -E '^(default-jdk|default-jre|openjdk-[0-9]+-(jdk|jre)|temurin-[0-9]+-jdk|adoptopenjdk-[0-9]+-jdk|oracle-java[0-9]+-installer|msopenjdk-[0-9]+)$'
# Purge all found Java packages
apt-get purge -y "${packages[@]}"
apt-get autoremove -y --purge
Das Skript entfernt auch übrig gebliebene Java-Verzeichnisse:
# Clean up Java directories
for dir in /usr/lib/jvm /opt/java /usr/local/java; do
if [[ -d "${dir}" ]]; then
find "${dir}" -mindepth 1 -maxdepth 1 -exec rm -rf {} +
fi
done
2. Adoptium-Repository konfigurieren¶
Das Skript fügt das offizielle Repository zu deinem System hinzu:
# Download and install the Adoptium GPG key
curl -fsSL https://packages.adoptium.net/artifactory/api/gpg/key/public \
| gpg --dearmor --yes -o /etc/apt/keyrings/adoptium.gpg
# Add the Adoptium repository
cat > /etc/apt/sources.list.d/adoptium.list <<EOF
deb [signed-by=/etc/apt/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb ${UBUNTU_CODENAME} main
EOF
# Update package lists
apt-get update -y
3. Java installieren¶
Das Skript installiert Java 25
# Install Temurin JDK 25
apt-get install -y --no-install-recommends temurin-25-jdk
4. Umgebungsvariablen konfigurieren¶
Das Skript richtet JAVA_HOME ein und fügt Java zu deinem PATH hinzu:
# Find the installed Java location
javac_bin="$(readlink -f "$(command -v javac)")"
detected_java_home="$(dirname "$(dirname "${javac_bin}")")"
# Create a stable symlink at /opt/java/jdk-25
ln -sfn "${detected_java_home}" /opt/java/jdk-25
# Create profile script for all users
cat > /etc/profile.d/java-25.sh <<EOF
export JAVA_HOME="/opt/java/jdk-25"
case ":\$PATH:" in
*":\$JAVA_HOME/bin:"*) ;;
*) export PATH="\$JAVA_HOME/bin:\$PATH" ;;
esac
EOF
Das Skript aktualisiert auch das Alternative-System:
# Set Java 25 as the default Java
update-alternatives --set java /opt/java/jdk-25/bin/java
update-alternatives --set javac /opt/java/jdk-25/bin/javac
5. Installation überprüfen¶
Abschließend testet das Skript, ob Java korrekt funktioniert:
# Create a test Java file
cat > "${temp_dir}/HelloJava25.java" <<'EOF'
public class HelloJava25 {
public static void main(String[] args) {
System.out.println("Java 25 smoke test");
}
}
EOF
# Compile and run the test
"${JAVA_HOME}/bin/javac" "${temp_dir}/HelloJava25.java"
output="$("${JAVA_HOME}/bin/java" -cp "${temp_dir}" HelloJava25)"
# Verify output
if [[ "${output}" != "Java 25 smoke test" ]]; then
echo "The Java 25 smoke test failed."
exit 1
fi
# Show installed versions
java -version
javac -version
Fehlerbehebung¶
- Zugriff verweigert:
Führe das Skript mit sudo aus:
sudo ./install_java25_ubuntu.sh- Skript unterstützt nur Ubuntu:
Dieses Skript ist für Ubuntu konzipiert. Für andere Distributionen musst du die Repository-Konfiguration anpassen.
- Repository-Verbindung fehlgeschlagen:
Überprüfe deine Internetverbindung und stelle sicher, dass du
packages.adoptium.neterreichen kannst.- Umgebungsvariablen nicht gesetzt:
Melde dich ab und wieder an, oder lade das Profil manuell:
source /etc/profile.d/java-25.sh- Smoke-Test fehlgeschlagen:
Führe das Skript erneut aus oder überprüfe die Fehlermeldung für Details.