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
- Java Developer Kit, versão 8 ou posterior. Recomendamos a versão 17 para a melhor experiência.
- Gradle
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. Inicializar um projeto Gradle é possível, mas não configura o SDK do Azure para detalhes do Java, como o equivalente do 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
Você será solicitado a responder a uma pequena série de perguntas, após as quais você terá um diretório contendo uma coleção de arquivos 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 usar versões de dependência para uma biblioteca de cliente do SDK do Azure para Java que esteja na BOM, inclua o seguinte trecho no projeto arquivo de 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. Recomendamos usar a versão mais recente para aproveitar os recursos mais recentes do SDK do Azure para bibliotecas de cliente Java.
Depois de começar a depender do SDK do Azure para Java BOM, você pode incluir dependências em bibliotecas sem especificar sua versão. Esses valores de versão são pesquisados automaticamente no SDK do Azure para Java BOM. Por exemplo, para incluir uma dependência
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. Recomendamos o uso da lista técnica para manter as dependências alinhadas e atualizadas.
Incluir um pacote que não está na lista técnica
O BOM do cliente SDK do Azure para Java inclui apenas bibliotecas Geralmente Disponíveis (GA). Se você quiser depender de um pacote que ainda está em versão beta ou de uma versão de biblioteca diferente da incluída na BOM, você pode especificar a versão de dependência do Maven junto com o groupId
e artifactId
na seção dependência. 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. Esses conflitos surgem porque pacotes diferentes podem depender de versões diferentes de dependências comuns, e essas versões podem não ser compatíveis entre si. Quando ocorrem conflitos, você pode experimentar um comportamento indesejável em tempo de compilação ou tempo de execução. Recomendamos que você confie nas versões que estão na lista técnica do SDK do Azure, a menos que 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, você precisa instalar o GraalVM e preparar seu 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 seu projeto baseado em Gradle existente, você pode seguir as instruções GraalVM para Gradle sobre como adicionar suporte GraalVM ao seu projeto. Ao fazer isso, você terá mais opções de compilação, permitindo que você compile seu aplicativo no bytecode Java padrão ou em 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.