Wprowadzenie do zestawu Azure SDK i narzędzia Gradle

W tym artykule pokazano, jak używać narzędzia Gradle do tworzenia aplikacji za pomocą zestawu Azure SDK dla języka Java. W tym artykule skonfigurujesz nowy projekt przy użyciu Gradle, zbudujesz projekty za pomocą Gradle i wykorzystasz narzędzia GraalVM do tworzenia specyficznych dla platformy natywnych plików binarnych.

Warunki wstępne

  • JDKw wersji 8 lub późniejsza. Aby zapewnić najlepsze działanie, użyj wersji 17.
  • Gradle

Tworzenie nowego projektu narzędzia Gradle

W przeciwieństwie do narzędzia Maven, narzędzie Gradle nie ma systemu archetypów do rozpoczynania projektów w formie szablonu. Możesz utworzyć projekt Gradle, ale nie konfiguruje on elementów specyficznych dla zestawu Azure SDK for Java tak jak odpowiednik dla platformy Maven. Aby wykonać kroki, najpierw użyj następującego polecenia, aby utworzyć nowy, pusty katalog z wiersza polecenia:

gradle init --type java-application

Zostanie wyświetlony monit o udzielenie odpowiedzi na krótką serię pytań. Po zakończeniu będziesz mieć katalog zawierający kolekcję plików i podkatalogów. Aby upewnić się, że wygenerowany plik jest kompilowany, uruchom następujące polecenia wymagane do zweryfikowania kompilacji:

gradle clean assemble test

Teraz możesz przejść do edytowania pliku build.gradle znajdującego się w katalogu aplikacji. Aby uprościć zarządzanie wersjami zależności, zespół Azure SDK for Java co miesiąc publikuje Azure SDK for Java client BOM. Ten plik BOM zawiera wszystkie ogólnie dostępne pakiety klienta platformy Azure dla języka Java z zgodną wersją zależności.

Aby użyć wersji zależności dla biblioteki klienta zestawu Azure SDK dla języka Java, która znajduje się w modelu BOM, dołącz następujący fragment kodu w pliku build.gradle projektu. Zastąp symbol {bom_version_to_target} najnowszym wydaniem zestawu Azure SDK dla języka Java BOM.

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

Wszystkie wersje zestawu Azure SDK dla klienta Java BOM można znaleźć na stronie azure-sdk-bom. Użyj najnowszej wersji, aby skorzystać z najnowszych funkcji Azure SDK dla bibliotek klienckich Java.

Gdy zaczniesz używać Azure SDK for Java BOM, możesz dołączać zależności bibliotek bez określania ich wersji. Azure SDK dla Java BOM automatycznie udostępnia te wartości wersji. Aby na przykład uwzględnić zależność azure-storage-blob, dodaj następujące wiersze do pliku build.gradle:

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

Używanie narzędzia Gradle do definiowania zależności projektu może ułatwić zarządzanie projektami. Dzięki modelowi BOM zestawu Azure SDK możesz przyspieszyć projekt, jednocześnie zapewniając większą pewność co do przechowywania wersji zależności w dłuższej perspektywie. Użyj BOM, aby zachować zgodność i aktualność zależności.

Uwzględnij pakiet, który nie znajduje się w modelu BOM

Azure SDK dla Java klienta BOM zawiera tylko biblioteki ogólnie dostępne (GA). Jeśli chcesz użyć pakietu, który jest nadal w wersji beta, lub wersji biblioteki innej niż uwzględniona w BOM, określ wersję zależności Maven wraz z groupId i artifactId w sekcji zależności. Możesz wybrać zależności korzystające z wersji BOM i zależności z zastąpionymi wersjami w tym samym pliku POM projektu, jak pokazano w poniższym przykładzie:

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'
}

Jeśli używasz tej metody i określasz wersje bezpośrednio w projekcie, mogą wystąpić konflikty wersji zależności. Te konflikty występują, ponieważ różne pakiety mogą zależeć od różnych wersji wspólnych zależności, a te wersje mogą nie być ze sobą zgodne. W przypadku wystąpienia konfliktów może wystąpić niepożądane zachowanie w czasie kompilacji lub w czasie wykonywania. Polegaj na wersjach, które znajdują się w Azure SDK BOM, chyba że jest to konieczne. Aby uzyskać więcej informacji na temat obsługi zależności podczas korzystania z zestawu Azure SDK dla języka Java, zobacz Rozwiązywanie problemów z konfliktami wersji zależności.

Tworzenie obrazu natywnego wykorzystując GraalVM

Maszynę wirtualną GraalVM można użyć do utworzenia obrazu natywnego aplikacji Java. GraalVM kompiluje kod Java przed upływem czasu do natywnego kodu maszynowego, co może przynieść drastyczne wzrosty wydajności w niektórych sytuacjach. Zestaw Azure SDK dla języka Java udostępnia niezbędne metadane w każdej ze swoich bibliotek klienckich, aby wspierać kompilację natywnych obrazów GraalVM.

Aby rozpocząć, zainstaluj maszynę GraalVM i przygotuj system programowania do kompilowania obrazów natywnych. Proces instalacji maszyny GraalVM jest prosty, a dokumentacja narzędzia GraalVM zawiera instrukcje krok po kroku dotyczące instalowania maszyny wirtualnej GraalVM i przy użyciu maszyny GraalVM w celu zainstalowaniaobrazu natywnego. Dokładnie postępuj zgodnie z sekcją wymagań wstępnych, aby zainstalować niezbędne kompilatory natywne dla systemu operacyjnego.

W istniejącym projekcie opartym na Gradle postępuj zgodnie z instrukcjami GraalVM dla Gradle, aby dowiedzieć się, jak dodać obsługę GraalVM do swojego projektu. W tym kroku uzyskasz więcej opcji kompilacji, dzięki czemu możesz skompilować aplikację do standardowego kodu bajtowego Java lub do obrazu natywnego skompilowanego przez maszynę wirtualną GraalVM.

Następnie możesz uruchomić kompilację obrazu natywnego. Aby użyć obrazu natywnego GraalVM, można użyć standardowych narzędzi Gradle. W przypadku narzędzia Gradle użyj następującego polecenia:

gradle nativeCompile

Po uruchomieniu tego polecenia graalVM generuje natywny plik wykonywalny dla platformy, na której działa. Plik wykonywalny zostanie wyświetlony w katalogu /app/build/native/nativeCompile projektu. Teraz możesz uruchomić aplikację przy użyciu tego pliku wykonywalnego i powinna działać podobnie jak w przypadku standardowej aplikacji Java.

Następne kroki