Erste Schritte mit Azure SDK und Gradle
In diesem Artikel erfahren Sie, wie Sie Gradle zum Erstellen von Anwendungen mit dem Azure SDK für Java verwenden. In diesem Artikel richten Sie ein neues Projekt mit Gradle ein, erstellen Projekte mit Gradle und verwenden das native GraalVM-Imagetool zum Erstellen plattformspezifischer nativer Binärdateien.
Voraussetzungen
- Java Developer Kit, Version 8 oder höher. Wir empfehlen Version 17, um die beste Erfahrung zu erzielen.
- Gradle
Erstellen eines neuen Gradle-Projekts
Im Gegensatz zu Maven verfügt Gradle nicht über ein Archetypsystem für Bootstrapping-Projekte in vorlagengerechter Weise. Das Bootstrapping eines Gradle-Projekts ist möglich, aber es konfiguriert das Azure SDK nicht für Java-Spezifische wie die Maven-Entsprechung. Um die Schritte zu durchlaufen, verwenden Sie zuerst den folgenden Befehl, um ein neues, leeres Verzeichnis über die Befehlszeile zu erstellen:
gradle init --type java-application
Sie werden aufgefordert, eine kurze Reihe von Fragen zu beantworten, nach denen Sie über ein Verzeichnis verfügen, das eine Sammlung von Dateien und Unterverzeichnissen enthält. Um sicherzustellen, dass die generierten Dateien kompiliert werden, führen Sie die folgenden Befehle aus, die zum Überprüfen des Builds erforderlich sind:
gradle clean assemble test
Sie können nun fortfahren, um die Datei build.gradle im App-Verzeichnis zu bearbeiten. Um die Verwaltung von Abhängigkeitsversionen zu vereinfachen, veröffentlicht das Azure SDK für Java-Team jeden Monat das Azure SDK für Java-Client-BOM . Diese BOM-Datei enthält alle allgemein verfügbaren Azure SDK für Java-Clientpakete mit ihrer kompatiblen Abhängigkeitsversion.
Wenn Sie Abhängigkeitsversionen für ein Azure SDK für java-Clientbibliothek verwenden möchten, die sich in der BOM befindet, fügen Sie den folgenden Codeausschnitt in die Datei "project build.gradle " ein. Ersetzen Sie den {bom_version_to_target}
Platzhalter durch die neueste Version des Azure SDK für Java BOM.
dependencies {
implementation platform('com.azure:azure-sdk-bom:{bom_version_to_target}')
}
Alle Versionen des Azure SDK für Java-Client-BOM finden Sie unter azure-sdk-bom. Es wird empfohlen, die neueste Version zu verwenden, um die neuesten Features des Azure SDK für Java-Clientbibliotheken zu nutzen.
Nachdem Sie je nach Azure SDK für Java BOM begonnen haben, können Sie Abhängigkeiten von Bibliotheken einschließen, ohne ihre Version anzugeben. Diese Versionswerte werden automatisch im Azure SDK für Java BOM nachschlagen. Um z. B. eine azure-storage-blob
Abhängigkeit einzuschließen, fügen Sie der Datei build.gradle die folgenden Zeilen hinzu:
dependencies {
implementation 'com.azure:azure-storage-blob'
}
Die Verwendung von Gradle zum Definieren von Projektabhängigkeiten kann die Verwaltung Ihrer Projekte vereinfachen. Mit der Azure SDK-BOM können Sie Ihr Projekt beschleunigen und gleichzeitig auf die langfristige Versionsverwaltung ihrer Abhängigkeit vertrauen. Es wird empfohlen, die BOM zu verwenden, um Abhängigkeiten auf dem neuesten Stand zu halten.
Einschließen eines Pakets, das nicht in der BOM enthalten ist
Das Azure SDK für Java-Client-BOM enthält nur Allgemein verfügbare (GA)-Bibliotheken. Wenn Sie von einem Paket abhängig sein möchten, das sich noch in der Betaversion oder in einer Bibliotheksversion befindet, die nicht in der BOM enthalten ist, können Sie die Maven-Abhängigkeitsversion zusammen mit dem groupId
Und artifactId
im Abhängigkeitsabschnitt angeben. Sie können abhängigkeiten haben, die BOM-Versionen und Abhängigkeiten mit überschriebenen Versionen in derselben PROJEKT-POM-Datei verwenden, wie im folgenden Beispiel gezeigt:
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'
}
Wenn Sie diesen Ansatz verwenden und Versionen direkt in Ihrem Projekt angeben, erhalten Sie möglicherweise Abhängigkeitsversionskonflikte. Diese Konflikte treten auf, da unterschiedliche Pakete möglicherweise von verschiedenen Versionen gemeinsamer Abhängigkeiten abhängen, und diese Versionen sind möglicherweise nicht miteinander kompatibel. Wenn Konflikte auftreten, können Bei der Kompilierungszeit oder Laufzeit unerwünschtes Verhalten auftreten. Es wird empfohlen, dass Sie sich auf Versionen verlassen, die sich im Azure SDK-BOM befinden, es sei denn, dies ist erforderlich. Weitere Informationen zum Umgang mit Abhängigkeiten bei Verwendung des Azure SDK für Java finden Sie unter Problembehandlung bei Abhängigkeitsversionskonflikten.
Erstellen eines nativen Images mit GraalVM
Sie können GraalVM verwenden, um ein systemeigenes Image einer Java-Anwendung zu erstellen. GraalVM kompiliert den Java-Code vorab in systemeigenen Computercode, was zu drastischen Leistungsgewinnen in bestimmten Situationen führen kann. Das Azure SDK für Java stellt die erforderlichen Metadaten in den einzelnen Clientbibliotheken zur Unterstützung der nativen GraalVM-Imagekompilierung bereit.
Um zu beginnen, müssen Sie GraalVM installieren und Ihr Entwicklungssystem für die Kompilierung nativer Images vorbereiten. Der Installationsprozess für GraalVM ist einfach, und die GraalVM-Dokumentation enthält schrittweise Anleitungen für die Installation von GraalVM und die Verwendung von GraalVM zum Installieren von nativem Image. Befolgen Sie den Abschnitt "Voraussetzungen " sorgfältig, um die erforderlichen systemeigenen Compiler für Ihr Betriebssystem zu installieren.
Mit Ihrem vorhandenen Gradle-basierten Projekt können Sie den GraalVM-Anweisungen für Gradle folgen, um GraalVM-Unterstützung zu Ihrem Projekt hinzuzufügen. Auf diese Weise haben Sie dann mehr Buildoptionen, sodass Sie Ihre Anwendung in den Standard-Java-Bytecode oder in ein systemeigenes Bild kompilieren können, das von GraalVM kompiliert wird.
Als Nächstes können Sie einen nativen Imagebuild ausführen. Sie können standardmäßige Gradle-Tools verwenden, um graalVM natives Image zu verwenden. Verwenden Sie für Gradle den folgenden Befehl:
gradle nativeCompile
Nachdem Sie diesen Befehl ausgeführt haben, gibt GraalVM eine systemeigene ausführbare Datei für die Plattform aus, auf der sie ausgeführt wird. Die ausführbare Datei wird im Verzeichnis Gradle /app/build/native/nativeCompile Ihres Projekts angezeigt. Sie können Ihre Anwendung jetzt mit dieser ausführbaren Datei ausführen, und sie sollte ähnlich wie eine Standard-Java-Anwendung ausgeführt werden.