다음을 통해 공유


Azure SDK 및 Gradle 시작

이 문서에서는 Gradle을 사용하여 Java용 Azure SDK를 사용하여 애플리케이션을 빌드하는 방법을 보여 줍니다. 이 문서에서는 Gradle을 사용하여 새 프로젝트를 설정하고, Gradle을 사용하여 프로젝트를 빌드하고, GraalVM 네이티브 이미지 도구를 사용하여 플랫폼별 네이티브 이진 파일을 만듭니다.

필수 조건

새 Gradle 프로젝트 만들기

Maven과 달리 Gradle에는 템플릿 방식으로 프로젝트를 부트스트래핑하는 아키타입 시스템이 없습니다. Gradle 프로젝트를 부트스트래핑할 수 있지만 Maven과 같은 Java 관련 항목에 대해 Azure SDK를 구성하지는 않습니다. 단계를 수행하려면 먼저 다음 명령을 사용하여 명령줄에서 비어 있는 새 디렉터리를 만듭니다.

gradle init --type java-application

짧은 일련의 질문에 대답하라는 메시지가 표시되며, 그 후에는 파일 및 하위 디렉터리 컬렉션을 포함하는 디렉터리가 있습니다. 생성된 파일이 컴파일되도록 하려면 빌드를 확인하는 데 필요한 다음 명령을 실행합니다.

gradle clean assemble test

이제 앱 디렉터리에 있는 build.gradle 파일을 편집할 수 있습니다. 우선 종속성 버전 관리를 더 간단하게 하기 위해 Java용 Azure SDK 팀은 매달 Java용 Azure SDK 클라이언트 BOM을 게시합니다. 이 BOM 파일에는 호환되는 종속성 버전이 있는 Java용 모든 GA(일반 공급) Azure SDK 클라이언트 패키지가 포함됩니다.

BOM에 있는 Java용 Azure SDK 클라이언트 라이브러리에 종속성 버전을 사용하려면 프로젝트 build.gradle 파일에 다음 코드 조각을 포함합니다. {bom_version_to_target} 자리 표시자를 Java BOMAzure SDK의 최신 릴리스로 바꿉 있습니다.

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

Azure-sdk-bom에서 Java용 Azure SDK 클라이언트 BOM의 모든 릴리스를 찾을 수 있습니다. 최신 버전을 사용하여 Java용 Azure SDK 클라이언트 라이브러리의 최신 기능을 활용하는 것이 좋습니다.

Java BOM용 Azure SDK에 따라 시작한 후에는 해당 버전을 지정하지 않고 라이브러리에 종속성을 포함할 수 있습니다. 이러한 버전 값은 Java BOM용 Azure SDK에서 자동으로 조회됩니다. 예를 들어 종속성을 포함 azure-storage-blob 하려면 build.gradle 파일에 다음 줄을 추가합니다.

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

Gradle을 사용하여 프로젝트 종속성을 정의하면 프로젝트를 더 간단하게 관리할 수 있습니다. Azure SDK BOM을 사용하면 장기적으로 종속성 버전 관리와 관련하여 확신하면서 프로젝트를 가속화할 수 있습니다. BOM을 사용하여 종속성을 정렬하고 최신 상태로 유지하는 것이 좋습니다.

BOM에 없는 패키지 포함

Java용 Azure SDK 클라이언트 BOM에는 GA(일반 공급) 라이브러리만 포함됩니다. 베타 버전이나 BOM에 포함된 것과 다른 라이브러리 버전에 있는 패키지에 종속하려는 경우 종속성 섹션 및 artifactId 종속성 섹션과 groupId 함께 Maven 종속성 버전을 지정할 수 있습니다. 다음 예제와 같이 동일한 프로젝트 POM 파일에서 재정의된 버전과 함께 BOM 버전 및 종속성을 사용하는 종속성을 선택할 수 있습니다.

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

이 방법을 사용하고 프로젝트에서 직접 버전을 지정하면 종속성 버전 충돌이 발생할 수 있습니다. 이러한 충돌은 서로 다른 패키지가 서로 다른 버전의 공통 종속성에 따라 달라질 수 있으며 이러한 버전이 서로 호환되지 않을 수 있기 때문에 발생합니다. 충돌이 발생하면 컴파일 시간 또는 런타임에 바람직하지 않은 동작이 발생할 수 있습니다. 필요한 경우가 아니면 Azure SDK BOM에 있는 버전을 사용하는 것이 좋습니다. Java용 Azure SDK를 사용할 때 종속성 처리에 대한 자세한 내용은 종속성 버전 충돌 문제를 참조 하세요.

GraalVM을 사용하여 네이티브 이미지 빌드

GraalVM을 사용하여 Java 애플리케이션의 네이 티브 이미지를 만들 수 있습니다. GraalVM은 Java 코드를 네이티브 머신 코드로 미리 컴파일하므로 특정 상황에서 성능이 크게 향상됩니다. Java용 Azure SDK는 GraalVM 네이티브 이미지 컴파일을 지원하기 위해 각 클라이언트 라이브러리에 필요한 메타데이터를 제공합니다.

시작하려면 GraalVM을 설치하고 네이티브 이미지를 컴파일하기 위한 개발 시스템을 준비해야 합니다. GraalVM의 설치 프로세스는 간단하며 GraalVM 설명서에서는 GraalVM을 설치하고 GraalVM을 사용하여 네이티브 이미지를 설치하기 위한 단계별 지침을 제공합니다. 필수 구성 요소 섹션에 따라 운영 체제에 필요한 네이티브 컴파일러를 설치합니다.

기존 Gradle 기반 프로젝트를 사용하면 Gradle에 대한 GraalVM 지침을 따라 프로젝트에 GraalVM 지원을 추가하는 방법을 확인할 수 있습니다. 이렇게 하면 더 많은 빌드 옵션이 있으므로 애플리케이션을 표준 Java 바이트 코드 또는 GraalVM에서 컴파일한 네이티브 이미지로 컴파일할 수 있습니다.

다음으로 네이티브 이미지 빌드를 실행할 준비가 된 것입니다. 표준 Gradle 도구를 사용하여 GraalVM 네이티브 이미지를 사용할 수 있습니다. Gradle의 경우 다음 명령을 사용합니다.

gradle nativeCompile

이 명령을 실행한 후 GraalVM은 실행 중인 플랫폼에 대한 네이티브 실행 파일을 출력합니다. 실행 파일은 프로젝트의 Gradle /app/build/native/nativeCompile 디렉터리에 나타납니다. 이제 이 실행 파일을 사용하여 애플리케이션을 실행할 수 있으며 표준 Java 애플리케이션과 유사하게 수행되어야 합니다.

다음 단계