Condividi tramite


Introduzione ad Azure SDK e Gradle

Questo articolo illustra come usare Gradle per creare applicazioni con Azure SDK per Java. In questo articolo si configura un nuovo progetto con Gradle, si compilano progetti con Gradle e si usano gli strumenti di immagine nativa graalVM per creare file binari nativi specifici della piattaforma.

Prerequisiti

  • Java Developer Kit, versione 8 o successiva. Per un'esperienza ottimale, è consigliabile usare la versione 17.
  • Gradle

Creare un nuovo progetto Gradle

A differenza di Maven, Gradle non ha un sistema archetipo per i progetti di bootstrapping in modo modello. Il bootstrap di un progetto Gradle è possibile, ma non configura Azure SDK per specifiche di Java come l'equivalente Maven. Per eseguire i passaggi, usare prima di tutto il comando seguente per creare una nuova directory vuota dalla riga di comando:

gradle init --type java-application

Viene richiesto di rispondere a una breve serie di domande, dopo di che si dispone di una directory contenente una raccolta di file e sottodirectory. Per assicurarsi che i file generati vengano compilati, eseguire i comandi seguenti necessari per verificare la compilazione:

gradle clean assemble test

È ora possibile passare alla modifica del file build.gradle che si trova nella directory dell'app. Per iniziare, per semplificare la gestione delle versioni delle dipendenze, il team di Azure SDK per Java pubblica ogni mese il bom client di Azure SDK per Java. Questo file DBA include tutti i pacchetti client azure SDK disponibili a livello generale per Java con la versione compatibile delle dipendenze.

Per usare le versioni delle dipendenze per una libreria client di Azure SDK per Java presente nella distinta base, includere il frammento di codice seguente nel file build.gradle del progetto. Sostituire il {bom_version_to_target} segnaposto con la versione più recente di Azure SDK per Java BOM.

dependencies {
    implementation platform('com.azure:azure-sdk-bom:{bom_version_to_target}')
}

È possibile trovare tutte le versioni della distinta base del client Azure SDK per Java in azure-sdk-bom. È consigliabile usare la versione più recente per sfruttare le funzionalità più recenti delle librerie client di Azure SDK per Java.

Dopo aver iniziato a seconda della distinta base di Azure SDK per Java, è possibile includere dipendenze dalle librerie senza specificarne la versione. Questi valori di versione vengono cercati automaticamente in Azure SDK per Java BOM. Ad esempio, per includere una azure-storage-blob dipendenza, aggiungere le righe seguenti al file build.gradle :

dependencies {
    implementation 'com.azure:azure-storage-blob'
}

L'uso di Gradle per definire le dipendenze del progetto può semplificare la gestione dei progetti. Con la distinta base di Azure SDK è possibile accelerare il progetto, garantendo al tempo stesso maggiore sicurezza sul controllo delle versioni delle dipendenze a lungo termine. È consigliabile usare la distinta base per mantenere le dipendenze allineate e aggiornate.

Includere un pacchetto non nella distinta base

La distinta base del client Azure SDK per Java include solo librerie disponibili a livello generale. Se si vuole dipendere da un pacchetto ancora in versione beta o da una versione di libreria diversa da quella inclusa nella distinta base, è possibile specificare la versione delle dipendenze Maven insieme groupId a e artifactId nella sezione delle dipendenze. È possibile scegliere di avere dipendenze che usano le versioni bom e le dipendenze con versioni sottoposte a override nello stesso file POM del progetto, come illustrato nell'esempio seguente:

dependencies {
    // Use the dependency version that is in the BOM
    implementation 'com.azure:azure-messaging-eventhubs'

    // Override the Service Bus dependency version specified in the BOM
    implementation 'com.azure:azure-messaging-servicebus:7.4.0'
}

Se si usa questo approccio e si specificano le versioni direttamente nel progetto, è possibile che si verifichino conflitti di versione delle dipendenze. Questi conflitti si verificano perché pacchetti diversi possono dipendere da versioni diverse delle dipendenze comuni e queste versioni potrebbero non essere compatibili tra loro. Quando si verificano conflitti, è possibile riscontrare un comportamento indesiderato in fase di compilazione o runtime. È consigliabile basarsi sulle versioni presenti nella distinta base di Azure SDK, a meno che non sia necessario. Per altre informazioni sulla gestione delle dipendenze quando si usa Azure SDK per Java, vedere Risolvere i conflitti di versione delle dipendenze.

Creare un'immagine nativa con GraalVM

È possibile usare GraalVM per creare un'immagine nativa di un'applicazione Java. GraalVM compila il codice Java in anticipo nel codice del computer nativo, che può produrre miglioramenti significativi delle prestazioni in determinate situazioni. Azure SDK per Java fornisce i metadati necessari in ognuna delle librerie client per supportare la compilazione di immagini native graalVM.

Per iniziare, è necessario installare GraalVM e preparare il sistema di sviluppo per la compilazione di immagini native. Il processo di installazione di GraalVM è semplice e la documentazione di GraalVM fornisce istruzioni dettagliate per l'installazione di GraalVM e l'uso di GraalVM per installare l'immagine nativa. Seguire attentamente la sezione prerequisiti per installare i compilatori nativi necessari per il sistema operativo.

Con il progetto basato su Gradle esistente, è possibile seguire le istruzioni di GraalVM per Gradle su come aggiungere il supporto graalVM al progetto. In questo modo sono disponibili altre opzioni di compilazione, che consentono di compilare l'applicazione nel bytecode Java standard o in un'immagine nativa compilata da GraalVM.

A questo punto, si è pronti per eseguire una compilazione di immagini native. È possibile usare gli strumenti Gradle standard per usare l'immagine nativa GraalVM. Per Gradle, usare il comando seguente:

gradle nativeCompile

Dopo aver eseguito questo comando, GraalVM restituisce un eseguibile nativo per la piattaforma in cui è in esecuzione. L'eseguibile viene visualizzato nella directory Gradle /app/build/native/nativeCompile del progetto. È ora possibile eseguire l'applicazione con questo file eseguibile e dovrebbe essere eseguita in modo analogo a un'applicazione Java standard.

Passaggi successivi