Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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, 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 inizializzare un progetto Gradle, ma non configura gli elementi specifici di Azure SDK per Java come fa 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 chiesto di rispondere a una breve serie di domande. Al termine, 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 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 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. Usare la versione più recente per sfruttare le funzionalità più recenti del Azure SDK per le librerie client di Java.
Dopo aver iniziato a usare l'Azure SDK for Java BOM, è possibile includere dipendenze da librerie senza specificarne la versione. Il Azure SDK per Java BOM fornisce automaticamente questi valori di versione. 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. Usa il BOM per mantenere le dipendenze allineate e aggiornate.
Includere un pacchetto non incluso nella distinta base
Il BOM client di Azure SDK per Java include solo librerie generalmente disponibili (GA). Se vuoi utilizzare una dipendenza relativa a un pacchetto ancora in versione beta o a una versione di libreria diversa da quella inclusa nella BOM, specifica la versione della dipendenza Maven insieme a groupId e artifactId nella sezione dependency. È 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 che si verifichi un comportamento indesiderato in fase di compilazione o runtime. Affidarsi alle versioni incluse nel BOM di Azure SDK, salvo diversa necessità. 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, 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, seguire le istruzioni di GraalVM per Gradle su come aggiungere il supporto di GraalVM al progetto. In questo passaggio si ottengono altre opzioni di compilazione, in modo da poter compilare l'applicazione nello standard Java bytecode 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.