Configura un ambiente di sviluppo Java

Questo tutorial mostra come preparare la macchina locale per lo sviluppo con Java, incluso lo sviluppo di app Java che vengono eseguite suGoogle Cloud. Segui questi passaggi per installare Java e gli strumenti pertinenti.

Obiettivi

  • Installa un JDK (Java Development Kit).
  • Installa uno strumento di automazione della build.
  • Installa gcloud CLI.
  • (Facoltativo) Installa un IDE o un editor.
  • (Facoltativo) Installa il plug-in IDE Google Cloud .
  • Installa le librerie client di Cloud per Java.
  • Configurare l'autenticazione.

Installare un JDK (Java Development Kit)

Puoi scegliere qualsiasi distribuzione Java di tua scelta assicurandoti che siano impostate le seguenti variabili di ambiente:

  • JAVA_HOME: punta alla base dell'installazione di JDK.
  • PATH: include $JAVA_HOME/bin.

Eclipse Temurin è la distribuzione OpenJDK (Java Development Kit) consigliata per l'utilizzo conGoogle Cloud. Temurin è con licenza open source, certificato Java SE TCK e testato per garantire prestazioni e sicurezza di qualità di produzione.

Le istruzioni di installazione di Temurin variano in base al sistema operativo.

Se utilizzi le immagini di avvio di Compute Engine, puoi utilizzare i seguenti script di installazione.

CentOS/RHEL/Rocky

  1. Determina la versione principale di CentOS/RHEL/Rocky Linux:
    eval "$(grep VERSION_ID /etc/os-release)"
    eval "$(grep ^ID= /etc/os-release)"
    OLD_IFS=$IFS
    IFS='.'
    read -ra split_version <<< "$VERSION_ID"
    IFS=$OLD_IFS
    MAJOR_VERSION=$split_version
  2. Crea il file del repository di origine Adoptium, `/etc/yum.repos.d/adoptium.repo`:
    sudo tee /etc/yum.repos.d/adoptium.repo << EOM
    [Adoptium]
    name=Adoptium
    baseurl=https://packages.adoptium.net/artifactory/rpm/$ID/$MAJOR_VERSION/\$basearch
    enabled=1
    gpgcheck=1
    gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public
    EOM
  3. Aggiorna gli elenchi di pacchetti:
    sudo yum update -y
  4. Installa Temurin:
    sudo yum install -y temurin-17-jdk
  5. Verifica l'installazione:
    java -version

Debian/Ubuntu

  1. Installa la chiave GPG del repository pubblico. Se utilizzi Ubuntu 16.4, passa la chiave tramite gpg --dearmor prima di salvare nel file. (ad es. sudo wget ... | gpg --dearmor | sudo tee ...)
    sudo mkdir -p /etc/apt/keyrings
    sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public |
      sudo tee /etc/apt/keyrings/adoptium.asc
  2. Determina il nome della distribuzione Linux e crea il file dell'elenco di origine, /etc/apt/sources.list.d/adoptium.list:
    eval "$(grep VERSION_CODENAME /etc/os-release)"
    sudo tee /etc/apt/sources.list.d/adoptium.list << EOM
    deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $VERSION_CODENAME main
    EOM
  3. Aggiorna gli elenchi di pacchetti:
    sudo apt update -y
  4. Installa Temurin:
    sudo apt install -y temurin-17-jdk
  5. Verifica l'installazione:
    java -version

SLES

  1. Determina la versione principale di SLES:
    eval "$(grep VERSION_ID /etc/os-release)"
    OLD_IFS=$IFS
    IFS='.'
    read -ra split_version <<< "$VERSION_ID"
    IFS=$OLD_IFS
    MAJOR_VERSION=$split_version
  2. Installa la chiave GPG del repository pubblico:
    sudo mkdir -p /etc/zypp/keyrings
    sudo wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public |
      sudo tee /etc/zypp/keyrings/adoptium.asc
    sudo rpm --import /etc/zypp/keyrings/adoptium.asc
  3. Determina la versione di SLES e registra il repository Adoptium:
    sudo zypper ar -f "https://packages.adoptium.net/artifactory/rpm/sles/$MAJOR_VERSION/$(uname -m)" adoptium
  4. Aggiorna gli elenchi di pacchetti:
    sudo zypper update -y
  5. Installa Temurin:
    sudo zypper install -y temurin-17-jdk
  6. Verifica l'installazione:
    java -version

Windows

Per installare Temurin, esegui PowerShell versione 3.0 o successive come amministratore con i seguenti comandi.

  1. Scarica Temurin. Il comando Invoke-WebRequest nelle istruzioni riportate di seguito richiede PowerShell 3.0 o versioni successive.
    $JdkVersion = 17
    $JdkUrl = "https://api.adoptium.net/v3/binary/latest/$JdkVersion/ga/windows/x64/jdk/hotspot/normal/eclipse?project=jdk"
    $JdkExtractionPath = "C:\temurin-$JdkVersion-jdk"
    $JdkDownload = "$JdkExtractionPath.zip"
    [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]'Tls12'
    Invoke-WebRequest -Uri $JdkUrl -OutFile $JdkDownload
    Expand-Archive $JdkDownload -DestinationPath $JdkExtractionPath -Force
  2. Imposta le variabili JAVA_HOME e Path:
    pushd $JdkExtractionPath
    $JdkPath = (Get-ChildItem).FullName
    popd
    [System.Environment]::SetEnvironmentVariable('JAVA_HOME', $JdkPath, 'Machine')
    
          
  3. (Optional) Refresh your session's `$env:Path` value. Otherwise, start a new session:
    $MachinePath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
    $UserPath = [System.Environment]::GetEnvironmentVariable('Path', 'User')
    $env:Path = "$MachinePath;$UserPath"
  4. Verifica l'installazione:
    java -version

Installare uno strumento di automazione della build

Apache Maven, Gradle e SBT sono opzioni di gestione dei pacchetti che possono aiutarti a creare dipendenze delle app Java in modo rapido e coerente su tutte le piattaforme.

Installa gcloud CLI

gcloud CLI è un insieme di strumenti per Google Cloud. Include gcloud e bq, utili per accedere dalla riga di comando a Compute Engine, Cloud Storage, BigQuery e altri prodotti e servizi. Puoi eseguire questi strumenti in modo interattivo o nei tuoi script automatizzati.

(Facoltativo) Installa un IDE o un editor

Gli editor più utilizzati (senza un ordine particolare) per sviluppare app Java includono, a titolo esemplificativo:

Questi editor (a volte con l'aiuto di plug-in) offrono di tutto, da evidenziazione della sintassi, IntelliSense e completamento del codice a funzionalità di debug completamente integrate.

(Facoltativo) Installare un plug-in IDE

Per accedere a funzioni utili all'interno dell'editor, dai un'occhiata ai seguenti plug-in:

Installa le librerie client di Cloud per Java

Utilizza le librerie client di Google Cloud per Java per l'integrazione con i servizi Google Cloud, come Datastore e Cloud Storage. Puoi installare il pacchetto per una singola API, ad esempio BigQuery, come mostrato nell'esempio seguente.

If you are using Maven, add the following to your pom.xml file. For more information about BOMs, see The Google Cloud Platform Libraries BOM.

<!--  Using libraries-bom to manage versions.
See https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.62.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-bigquery</artifactId>
  </dependency>
</dependencies>

If you are using Gradle, add the following to your dependencies:

implementation platform('com.google.cloud:libraries-bom:26.45.0')

implementation 'com.google.cloud:google-cloud-bigquery'

If you are using sbt, add the following to your dependencies:

libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "2.42.2"

If you're using Visual Studio Code or IntelliJ, you can add client libraries to your project using the following IDE plugins:

The plugins provide additional functionality, such as key management for service accounts. Refer to each plugin's documentation for details.

Configura l'autenticazione

Per eseguire la libreria client, devi prima configurare l'autenticazione.

If you're using a local shell, then create local authentication credentials for your user account:

gcloud auth application-default login

You don't need to do this if you're using Cloud Shell.

If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

Per saperne di più, consulta Autenticati per usare le librerie client.

Utilizza la libreria client

// Imports the Google Cloud client library
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import com.google.cloud.bigquery.DatasetInfo;

public class QuickstartSample {
  public static void main(String... args) throws Exception {
    // Instantiate a client. If you don't specify credentials when constructing a client, the
    // client library will look for credentials in the environment, such as the
    // GOOGLE_APPLICATION_CREDENTIALS environment variable.
    BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

    // The name for the new dataset
    String datasetName = "my_new_dataset";

    // Prepares a new dataset
    Dataset dataset = null;
    DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build();

    // Creates the dataset
    dataset = bigquery.create(datasetInfo);

    System.out.printf("Dataset %s created.%n", dataset.getDatasetId().getDataset());
  }
}

Configura gli endpoint per la libreria client

Se utilizzi API che supportano endpoint regionali, utilizza gli endpoint per configurare il server a cui inviare le richieste. Ad esempio, con l'API Google.Cloud.Dataproc.V1, puoi configurare un endpoint client. Puoi scoprire di più sugli endpoint regionali per Dataproc qui. Assicurati di sostituire MY-PROJECT con il nome del progetto e us-central1 con la regione appropriata per la tua configurazione nel seguente esempio:

ClusterControllerSettings settings =
     ClusterControllerSettings.newBuilder()
        .setEndpoint("us-central1-dataproc.googleapis.com:443")
        .build();
 try (ClusterControllerClient clusterControllerClient = ClusterControllerClient.create(settings)) {
   String projectId = "MY-PROJECT";
   String region = "us-central1";
   Cluster cluster = Cluster.newBuilder().build();
 }

Passaggi successivi

(Facoltativo) Utilizza il plug-in Maven o Gradle per App Engine

Se sviluppi nell'ambiente standard o flessibile di App Engine, puoi utilizzare i plug-in per gli strumenti di compilazione Apache Maven e Gradle che forniscono funzioni pratiche per sviluppare, testare ed eseguire il deployment delle tue app direttamente.

Per gli ambienti standard di App Engine

Utilizza il plug-in Maven App Engine o il plug-in Gradle per gli ambienti standard di App Engine.

Per gli ambienti flessibili di App Engine

Utilizza il plug-in Maven App Engine o il plug-in Gradle per gli ambienti flessibili di App Engine.

Altre risorse