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 avviare i progetti in maniera strutturata. È possibile eseguire il bootstrap di un progetto Gradle, ma non configura i dettagli specifici di Azure SDK per 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

Ti viene chiesto di rispondere a una breve serie di domande, dopo il quale avrai 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 semplificare la gestione delle versioni delle dipendenze, il team di Azure SDK per Java pubblica l'DBA client di Azure SDK per Java ogni mese. Questo file BOM include tutti i pacchetti client dell'Azure SDK generalmente disponibili per Java con la versione compatibile delle dipendenze.

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

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

È possibile trovare tutte le versioni del BOM (Bill of Materials) del client di Azure SDK per Java al link azure-sdk-bom. È consigliabile usare la versione più recente per sfruttare le funzionalità più recenti delle librerie client di Azure SDK per Java.

Una volta che hai iniziato a dipendere dal BOM dell'Azure SDK per Java, puoi 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 dipendenza azure-storage-blob, aggiungi le righe seguenti nel 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 l'elenco BOM per l'SDK di Azure, puoi accelerare il tuo progetto e avere una maggiore fiducia nella gestione delle versioni delle dipendenze a lungo termine. Consigliamo di usare la distinta base per mantenere le dipendenze allineate e aggiornate.

Includere un pacchetto non presente nella distinta base

La BOM del client Azure SDK per Java include solo librerie che sono generalmente disponibili (GA). Se si desidera dipendere da un pacchetto ancora in versione beta o da una versione della libreria diversa da quella inclusa nella BOM, è possibile specificare la versione delle dipendenze Maven insieme a groupId e artifactId nella sezione delle dipendenze. È possibile scegliere di avere dipendenze che usano le versioni BOM e dipendenze con versioni sovrascritte 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. Consigliamo di fare affidamento sulle versioni presenti nel BOM dell'Azure SDK, a meno che non sia strettamente 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 nelle sue librerie client per supportare la compilazione delle 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 usando 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 GraalVM per Gradle su come aggiungere il supporto di 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, sei pronto 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 si trova 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