Partilhar via


Solucionar problemas comuns de compilação no Azure Spring Apps

Nota

Os planos Basic, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de aposentadoria de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.

O plano de consumo padrão e dedicado será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte Migrar consumo padrão e plano dedicado do Azure Spring Apps para Aplicativos de Contêiner do Azure.

Este artigo aplica-se a: ❎ Basic/Standard ✅ Enterprise

Este artigo descreve como solucionar problemas de compilação com sua implantação do Azure Spring Apps.

Criar códigos de saída

O plano do Azure Spring Apps Enterprise usa o Tanzu Buildpacks para transformar o código-fonte do seu aplicativo em imagens. Para obter mais informações, consulte Tanzu Buildpacks.

Quando você implanta seu aplicativo no Azure Spring Apps usando a CLI do Azure, você vê um log de compilação no console da CLI do Azure. Se a compilação falhar, o Azure Spring Apps exibirá um código de saída e uma mensagem de erro no console da CLI indicando por que a execução do buildpack falhou durante diferentes fases do ciclo de vida do buildpack.

A lista a seguir descreve alguns códigos de saída comuns:

  • 20 - Todos os grupos buildpack não conseguiram detetar.

    Considere as seguintes causas possíveis de um código de saída de 20:

    • O construtor que você está usando não suporta a linguagem que seu projeto usou.

      Se você estiver usando o construtor padrão, verifique o idioma suportado pelo construtor padrão. Para obter mais informações, consulte a seção Tipos de APM suportados de Como configurar a integração APM e certificados de CA.

      Se você estiver usando o construtor personalizado, verifique se o buildpack do construtor personalizado suporta o idioma usado pelo projeto.

    • Você está correndo contra o caminho errado; por exemplo, o arquivo de pom.xml do seu projeto Maven não está no caminho raiz.

      Defina BP_MAVEN_POM_FILE para especificar o local do arquivo pom.xml do projeto.

    • Há algo errado com seu aplicativo; por exemplo, seu arquivo .jar não tem um /META-INF/MANIFEST. MF que contém uma Main-Class entrada.

  • 51 - Erro de compilação do Buildpack.

    Considere as seguintes causas possíveis de um código de saída de 51:

    • Se o Azure Spring Apps exibir a mensagem Build failed in stage build with reason OOMKilled de erro no console da CLI do Azure, a compilação falhou devido à memória insuficiente.

      Use o seguinte comando para aumentar a memória usando a build-memory variável de ambiente:

      az spring app deploy \
          --resource-group <your-resource-group-name> \
          --service <your-Azure-Spring-Apps-name> \
          --name <your-app-name> \
          --build-memory 3Gi
      
    • A compilação falhou devido a um erro de código-fonte do aplicativo; por exemplo, há um erro de compilação no código-fonte.

      Verifique o log de compilação para encontrar a causa raiz.

    • A compilação falhou devido a um erro de dependência de download; por exemplo, um problema de rede fez com que o download da dependência do Maven falhasse.

    • A compilação falhou devido a uma versão JDK não suportada. Por exemplo, o arquivo JAR foi compilado usando versões LTS não-Java, que não são suportadas pelo buildpack. Para obter versões com suporte, consulte a seção Implantar aplicativos Java de Como implantar aplicativos poliglotas no plano do Azure Spring Apps Enterprise.

  • 62 - Falha ao gravar a imagem no Registro de Contêiner do Azure.

    Considere a seguinte causa possível de um código de saída de 62:

    • Se o Azure Spring Apps exibir a mensagem Failed to write image to the following tags de erro no log de compilação, a compilação falhou devido a um problema de rede.

      Tente corrigir novamente o problema.

Se seu aplicativo for um arquivo estático ou um aplicativo front-end dinâmico servido por um servidor Web, consulte a seção Erros comuns de compilação e implantação de Implantar arquivos estáticos da Web.

Próximos passos