Introdução ao SDK do Azure e ao Gradle

Este artigo mostra como usar o Gradle para criar aplicativos com o SDK do Azure para Java. Neste artigo, você configura um novo projeto com o Gradle, cria projetos com o Gradle e usa as ferramentas de imagem nativas do GraalVM para criar binários nativos específicos da plataforma.

Pré-requisitos

Criar um novo projeto Gradle

Ao contrário do Maven, o Gradle não tem um sistema de arquétipo para inicializar projetos de forma modelo. Podes arrancar um projeto Gradle, mas ele não configura o SDK do Azure para especificidades de Java como o equivalente ao Maven. Para executar as etapas, primeiro use o seguinte comando para criar um novo diretório vazio a partir da linha de comando:

gradle init --type java-application

É convidado a responder a uma curta série de perguntas. Depois de terminares, tens um diretório com uma coleção de ficheiros e subdiretórios. Para garantir que os arquivos gerados sejam compilados, execute os seguintes comandos necessários para verificar a compilação:

gradle clean assemble test

Agora pode avançar para editar o ficheiro build.gradle localizado no diretório da aplicação . Para simplificar a gestão das versões das dependências, a equipa do SDK do Azure para Java publica mensalmente o SDK do Azure for Java client BOM. Este arquivo de BOM inclui todos os pacotes de cliente do SDK do Azure para Java geralmente disponíveis (GA) com sua versão de dependência compatível.

Para usar versões de dependência para uma biblioteca cliente do SDK do Azure para Java incluída na BOM, inclua o seguinte fragmento no ficheiro do projeto build.gradle. Substitua o marcador de posição {bom_version_to_target} pela versão mais recente do SDK do Azure para Java, BOM.

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

Você pode encontrar todas as versões da BOM do cliente do SDK do Azure para Java em azure-sdk-bom. Use a versão mais recente para tirar partido das funcionalidades mais recentes das bibliotecas cliente do SDK do Azure para Java.

Depois de começares a depender do SDK do Azure para Java BOM, podes incluir dependências nas bibliotecas sem especificar a sua versão. O SDK do Azure para Java BOM fornece automaticamente estes valores de versão. Por exemplo, para incluir uma dependência , adicione as seguintes linhas ao seu arquivo build.gradle :

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

Usar o Gradle para definir dependências de projetos pode tornar o gerenciamento de seus projetos mais simples. Com a BOM do SDK do Azure, pode acelerar o seu projeto e ter mais confiança no versionamento das dependências a longo prazo. Utilize o BOM para manter as dependências alinhadas e atualizadas.

Inclua um pacote que não conste da BOM

O SDK do Azure for Java client BOM inclui apenas bibliotecas geralmente disponíveis (GA). Se quiseres usar um pacote que ainda esteja em beta ou uma versão de biblioteca diferente da incluída no BOM, especifica a versão da dependência Maven juntamente com groupId e artifactId na secção de dependências. Você pode optar por ter dependências que usam versões de BOM e dependências com versões substituídas no mesmo arquivo POM de projeto, conforme mostrado no exemplo a seguir:

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 você usar essa abordagem e especificar versões diretamente em seu projeto, poderá obter conflitos de versão de dependência. Estes conflitos surgem porque diferentes pacotes podem depender de diferentes versões de dependências comuns, e estas versões podem não ser compatíveis entre si. Quando ocorrem conflitos, pode experienciar comportamentos indesejáveis em tempo de compilação ou execução. Use as versões incluídas no BOM do SDK do Azure, a menos que tal seja necessário. Para obter mais informações sobre como lidar com dependências ao usar o SDK do Azure para Java, consulte Solucionar conflitos de versão de dependência.

Crie uma imagem nativa com GraalVM

Você pode usar GraalVM para criar uma imagem nativa de um aplicativo Java. GraalVM compila o código Java antecipadamente em código de máquina nativo, o que pode gerar ganhos drásticos de desempenho em determinadas situações. O SDK do Azure para Java fornece os metadados necessários em cada uma de suas bibliotecas de cliente para dar suporte à compilação de imagens nativas GraalVM.

Para começar, instala o GraalVM e prepara o teu sistema de desenvolvimento para compilar imagens nativas. O processo de instalação do GraalVM é simples, e a documentação do GraalVM fornece instruções passo a passo para instalar o GraalVM e usar o GraalVM para instalarde imagem nativa. Siga a seção de pré-requisitos cuidadosamente para instalar os compiladores nativos necessários para o seu sistema operacional.

Com o seu projeto atual baseado em Gradle, siga as instruções do GraalVM para o Gradle sobre como adicionar suporte ao GraalVM ao seu projeto. Ao fazer este passo, obtém mais opções de compilação, podendo compilar a sua aplicação para o bytecode Java padrão ou para uma imagem nativa compilada pelo GraalVM.

Em seguida, você está pronto para executar uma compilação de imagem nativa. Você pode usar as ferramentas padrão do Gradle para usar a imagem nativa do GraalVM. Para Gradle, use o seguinte comando:

gradle nativeCompile

Depois de executar esse comando, o GraalVM gera um executável nativo para a plataforma em que está sendo executado. O executável aparece no diretório Gradle /app/build/native/nativeCompile do seu projeto. Agora você pode executar seu aplicativo com esse arquivo executável, e ele deve funcionar de forma semelhante a um aplicativo Java padrão.

Próximos passos