Installazione e Configurazione di Java

Edoardo Midali
Edoardo Midali

L’installazione e la configurazione corretta di Java è il primo passo fondamentale per iniziare a programmare. In questa guida, esploreremo come installare il JDK, configurare le variabili d’ambiente e impostare un ambiente di sviluppo completo.

Cos’è il JDK?

Il Java Development Kit (JDK) è un pacchetto software che fornisce tutti gli strumenti necessari per sviluppare applicazioni Java. Include:

  • JRE (Java Runtime Environment): Necessario per eseguire le applicazioni Java
  • Compilatore javac: Per compilare i file sorgente Java
  • Debugger jdb: Per il debugging delle applicazioni
  • Documentazione API: Riferimenti completi per le librerie Java

Installazione del JDK

Su Windows

  1. Scarica il JDK:

    • Visita il sito ufficiale di Oracle o OpenJDK
    • Scarica la versione piĂš recente del JDK per Windows
    • Scegli tra Oracle JDK (commerciale) o OpenJDK (open source)
  2. Esegui l’installer:

    # Esegui il file .exe scaricato
    # Segui la procedura guidata di installazione
    # Seleziona la directory di installazione (default: C:\Program Files\Java\jdk-XX)
    
  3. Verifica l’installazione:

    java -version
    javac -version
    

Su macOS

  1. Usando Homebrew (consigliato):

    # Installa Homebrew se non presente
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
    # Installa il JDK
    brew install openjdk@17
    
    # Crea un symlink
    sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
    
  2. Download manuale:

    • Scarica il file .dmg dal sito Oracle o OpenJDK
    • Esegui l’installer seguendo le istruzioni

Su Linux (Ubuntu/Debian)

# Aggiorna i pacchetti
sudo apt update

# Installa OpenJDK 17
sudo apt install openjdk-17-jdk

# Verifica l'installazione
java -version
javac -version

Su Linux (CentOS/RHEL/Fedora)

# CentOS/RHEL
sudo yum install java-17-openjdk-devel

# Fedora
sudo dnf install java-17-openjdk-devel

Configurazione delle Variabili d’Ambiente

Windows

  1. Impostare JAVA_HOME:

    # Apri "Variabili d'ambiente di sistema"
    # Crea una nuova variabile JAVA_HOME
    JAVA_HOME=C:\Program Files\Java\jdk-17
    
  2. Aggiornare PATH:

    # Aggiungi al PATH esistente
    %JAVA_HOME%\bin
    

macOS/Linux

Aggiungi al file ~/.bashrc, ~/.zshrc o ~/.profile:

# Configura JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64  # Linux
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home  # macOS

# Aggiungi al PATH
export PATH=$JAVA_HOME/bin:$PATH

# Ricarica la configurazione
source ~/.bashrc  # o ~/.zshrc

Gestione di Multiple Versioni Java

Utilizzando SDKMAN (Linux/macOS)

# Installa SDKMAN
curl -s "https://get.sdkman.io" | bash

# Installa diverse versioni di Java
sdk install java 17.0.8-tem
sdk install java 11.0.20-tem
sdk install java 8.0.382-tem

# Cambia versione
sdk use java 17.0.8-tem

# Imposta versione di default
sdk default java 17.0.8-tem

Utilizzando jenv (macOS/Linux)

# Installa jenv
brew install jenv  # macOS
git clone https://github.com/jenv/jenv.git ~/.jenv  # Linux

# Aggiungi versioni Java
jenv add /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home

# Lista versioni disponibili
jenv versions

# Imposta versione locale per un progetto
jenv local 17.0

# Imposta versione globale
jenv global 17.0

Scelta dell’IDE

IntelliJ IDEA

# Caratteristiche principali:
- Autocompletamento intelligente
- Debugging avanzato
- Refactoring automatico
- Integrazione Git
- Supporto per framework (Spring, Maven, Gradle)

# Configurazione:
- Scarica da JetBrains
- Configura Project SDK pointing al JDK installato
- Imposta Code Style e Formatter

Eclipse

# Installazione:
- Scarica Eclipse IDE for Java Developers
- Estrai l'archivio e esegui eclipse.exe

# Configurazione:
- Window → Preferences → Java → Installed JREs
- Aggiungi il percorso del JDK installato

Visual Studio Code

# Installa VS Code
# Installa l'Extension Pack for Java:
- Language Support for Java
- Debugger for Java
- Test Runner for Java
- Maven for Java
- Project Manager for Java

Verifica della Configurazione

Crea e testa un semplice programma Java:

// HelloWorld.java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Java è configurato correttamente!");
        System.out.println("Versione Java: " + System.getProperty("java.version"));
        System.out.println("JAVA_HOME: " + System.getProperty("java.home"));
    }
}

Compila ed esegui:

# Compila il file Java
javac HelloWorld.java

# Esegui il programma
java HelloWorld

Configurazioni Avanzate

Impostazioni JVM

# Memoria heap
java -Xms512m -Xmx2g MyApp

# Garbage Collector
java -XX:+UseG1GC MyApp

# Profiling
java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder MyApp

Build Tools

# Maven
mvn --version

# Gradle
gradle --version

# Ant
ant -version

Risoluzione Problemi Comuni

Errore “java command not found”

# Verifica PATH
echo $PATH

# Verifica JAVA_HOME
echo $JAVA_HOME

# Su Windows, riavvia il command prompt
# Su Linux/macOS, ricarica il profile
source ~/.bashrc

Conflitti tra Versioni

# Trova tutte le installazioni Java
# Windows
where java

# Linux/macOS
which java
whereis java

# Rimuovi versioni non necessarie

Permessi Insufficienti

# Linux: aggiungi utente al gruppo appropriato
sudo usermod -a -G java $USER

# macOS: verifica permessi directory
ls -la /Library/Java/JavaVirtualMachines/

Best Practices

  1. Usa sempre una versione LTS (Long Term Support) per progetti in produzione
  2. Mantieni separate le versioni per diversi progetti
  3. Documenta la versione Java richiesta nei tuoi progetti
  4. Aggiorna regolarmente per patch di sicurezza
  5. Usa strumenti di gestione versioni come SDKMAN o jenv

Conclusione

Una corretta installazione e configurazione di Java è essenziale per un ambiente di sviluppo produttivo. Seguendo questa guida, avrai un setup completo e funzionale per iniziare a programmare in Java. Ricorda di mantenere sempre aggiornato il tuo ambiente di sviluppo e di utilizzare strumenti appropriati per la gestione delle versioni.