Azure Spring Apps의 일반적인 빌드 문제 해결

참고 항목

기본, 표준엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.

표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.

이 문서의 적용 대상:❌ 기본/표준 ✔️ 엔터프라이즈

이 문서에서는 Azure Spring Apps 배포와 관련된 빌드 문제를 해결하는 방법을 설명합니다.

종료 코드 빌드

Azure Spring Apps 엔터프라이즈 플랜은 Tanzu 빌드팩을 사용하여 애플리케이션 소스 코드를 이미지로 변환합니다. 자세한 내용은 Tanzu Buildpacks를 참조하세요.

Azure CLI를 사용하여 Azure Spring Apps에 앱을 배포하면 Azure CLI 콘솔에 빌드 로그가 표시됩니다. 빌드가 실패하면 Azure Spring Apps는 빌드팩 수명 주기의 여러 단계에서 빌드팩 실행이 실패한 이유를 나타내는 종료 코드와 오류 메시지를 CLI 콘솔에 표시합니다.

다음 목록은 몇 가지 일반적인 종료 코드를 설명합니다.

  • 20 - 모든 빌드팩 그룹을 검색하지 못했습니다.

    종료 코드 20의 다음과 같은 가능한 원인을 고려합니다.

    • 사용 중인 작성기가 프로젝트에서 사용한 언어를 지원하지 않습니다.

      기본 작성기를 사용하는 경우 기본 작성기가 지원하는 언어를 확인합니다. 자세한 내용은 APM 통합 및 CA 인증서를 구성하는 방법지원되는 APM 형식 섹션을 참조하세요.

      사용자 지정 작성기를 사용하는 경우 사용자 지정 작성기의 빌드팩이 프로젝트에서 사용한 언어를 지원하는지 확인합니다.

    • 잘못된 경로에 대해 실행 중입니다. 예를 들어 Maven 프로젝트의 pom.xml 파일이 루트 경로에 없습니다.

      BP_MAVEN_POM_FILE를 설정하여 프로젝트의 pom.xml 파일 위치를 지정합니다.

    • 애플리케이션에 문제가 있습니다. 예를 들어 .jar 파일에 Main-Class 항목이 포함된 /META-INF/MANIFEST.MF 파일이 없습니다.

  • 51 - 빌드팩 빌드 오류입니다.

    종료 코드 51의 다음과 같은 가능한 원인을 고려합니다.

    • Azure Spring Apps가 Azure CLI 콘솔에 오류 메시지 Build failed in stage build with reason OOMKilled를 표시하는 경우 메모리 부족으로 인해 빌드가 실패한 것입니다.

      build-memory 환경 변수를 사용하여 메모리를 늘리려면 다음 명령을 사용합니다.

      az spring app deploy \
          --resource-group <your-resource-group-name> \
          --service <your-Azure-Spring-Apps-name> \
          --name <your-app-name> \
          --build-memory 3Gi
      
    • 애플리케이션 소스 코드 오류로 인해 빌드가 실패했습니다. 예를 들어 소스 코드에 컴파일 오류가 있습니다.

      빌드 로그를 확인하여 근본 원인을 찾습니다.

    • 다운로드 종속성 오류로 인해 빌드가 실패했습니다. 예를 들어 네트워크 문제로 인해 Maven 종속성 다운로드가 실패했습니다.

    • 지원되지 않는 JDK 버전으로 인해 빌드에 실패했습니다. 예를 들어 JAR 파일이 빌드팩에서 지원되지 않는 비 Java LTS 버전을 사용하여 컴파일되었습니다. 지원되는 버전에 대한 정보는 Azure Spring Apps 엔터프라이즈 플랜에서 다국어 앱을 배포하는 방법Java 애플리케이션 배포 섹션을 참조하세요.

  • 62 - Azure Container Registry에 이미지를 쓰지 못했습니다.

    종료 코드 62의 다음과 같은 가능한 원인을 고려합니다.

    • Azure Spring Apps가 빌드 로그에 오류 메시지 Failed to write image to the following tags를 표시하는 경우 네트워크 문제로 인해 빌드가 실패한 것입니다.

      문제를 해결하려면 다시 시도하세요.

애플리케이션이 정적 파일이거나 웹 서버에서 제공하는 동적 프런트 엔드 애플리케이션인 경우 웹 정적 파일 배포일반적인 빌드 및 배포 오류 섹션을 참조하세요.

다음 단계