자바 개발 환경 설정

이 가이드에서는 Google Cloud에서 실행되는 자바 앱 개발을 포함하여 자바 개발을 위해 로컬 머신을 준비하는 방법을 설명합니다. 이 가이드에 따라 자바 및 관련 도구를 설치하세요.

팁: 빠르게 시작할 수 있도록 Cloud Shell 편집기는 Kubernetes 및 Cloud Run 애플리케이션의 전체 개발 주기에 대한 IDE 지원을 제공합니다. Cloud Shell 편집기는 Eclipse Theia IDE 플랫폼을 기반으로 하며 Google Cloud CLI 및 Cloud Code 도구가 사전 설치되어 있습니다.

목표

  • JDK(자바 개발 키트) 설치
  • 빌드 자동화 도구 설치
  • (선택사항) IDE 또는 편집기 설치
  • (선택사항) IDE Google Cloud 플러그인 설치
  • gcloud CLI 설치
  • 자바용 Cloud 클라이언트 라이브러리 설치

JDK(자바 개발 키트) 설치

OpenJDK 11 또는 OpenJDK 8 배포를 설치합니다. 다음은 사용할 수 있는 몇 가지 배포 목록입니다.

  • SdkMan 여러 OpenJDK, Maven, Gradle을 포함한 여러 SDK를 관리하는 도구입니다.
  • Eclipse Temurin Eclipse Temurin 프로젝트에서 빌드한 OpenJDK 빌드입니다.
  • Zulu 커뮤니티 빌드 OpenJDK의 Zulu 커뮤니티 빌드입니다.
  • jdk.java.net Oracle의 자바 개발 키트 빌드입니다.

다음 환경 변수가 설정되었는지 확인합니다.

  • JAVA_HOME: JDK 설치 기본 위치를 가리킵니다.
  • 경로: $JAVA_HOME/bin을 포함합니다.

빌드 자동화 도구 설치

Apache Maven, Gradle, SBT는 여러 플랫폼에서 자바 앱 종속 항목을 빠르고 일관적으로 빌드할 수 있는 패키지 관리 옵션입니다.

gcloud CLI 설치

gcloud CLI는 Google Cloud용 도구 모음입니다. 여기에는 명령줄에서 Compute Engine, Cloud Storage, BigQuery, 기타 제품 및 서비스에 액세스하기 위해 사용할 수 있는 gcloud, gsutil, bq가 포함됩니다. 이러한 도구는 대화식으로 또는 자동화 스크립트를 사용해서 실행할 수 있습니다.

(선택사항) IDE 또는 편집기 설치

다음은 자바 앱을 개발하는 데 사용되는 인기 있는 편집기 중 일부입니다. 순서는 무작위입니다.

이러한 편집기(경우에 따라 플러그인 포함)는 구문 강조 표시, intelli-sense, 코드 완성부터 완전 통합 디버깅 기능까지 모든 기능을 제공합니다.

(선택사항) IDE 플러그인 설치

편집기 내에서 유용한 기능에 액세스하려면 다음 플러그인을 확인하세요.

자바용 Google Cloud 클라이언트 라이브러리 사용

자바용 Google Cloud 클라이언트 라이브러리를 사용하여 Datastore 및 Cloud Storage와 같은 Google Cloud 서비스와 통합할 수 있습니다. 다음 예시에 표시된 것처럼 BigQuery와 같은 개별 API를 위한 패키지를 설치할 수 있습니다.

클라이언트 라이브러리 설치

Maven을 사용하는 경우 pom.xml 파일에 다음을 추가합니다. BOM에 대한 자세한 내용은 Google Cloud Platform 라이브러리 BOM을 참조하세요.

<!--  Using libraries-bom to manage versions.
See https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM -->
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.20.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-bigquery</artifactId>
  </dependency>
</dependencies>

Gradle을 사용하는 경우 종속 항목에 다음을 추가합니다.

implementation platform('com.google.cloud:libraries-bom:26.37.0')

implementation 'com.google.cloud:google-cloud-bigquery'

SBT를 사용하는 경우 종속 항목에 다음을 추가합니다.

libraryDependencies += "com.google.cloud" % "google-cloud-bigquery" % "2.38.2"

Visual Studio Code, IntelliJ 또는 Eclipse를 사용하는 경우 다음 IDE 플러그인을 사용하여 클라이언트 라이브러리를 프로젝트에 추가할 수 있습니다.

이 플러그인은 서비스 계정의 키 관리와 같은 추가 기능을 제공합니다. 자세한 내용은 각 플러그인의 문서를 참조하세요.

인증 설정

클라이언트 라이브러리를 실행하려면 먼저 인증 설정을 수행해야 합니다.

클라이언트 라이브러리 사용

// Imports the Google Cloud client library
import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.Dataset;
import com.google.cloud.bigquery.DatasetInfo;

public class QuickstartSample {
  public static void main(String... args) throws Exception {
    // Instantiate a client. If you don't specify credentials when constructing a client, the
    // client library will look for credentials in the environment, such as the
    // GOOGLE_APPLICATION_CREDENTIALS environment variable.
    BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

    // The name for the new dataset
    String datasetName = "my_new_dataset";

    // Prepares a new dataset
    Dataset dataset = null;
    DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build();

    // Creates the dataset
    dataset = bigquery.create(datasetInfo);

    System.out.printf("Dataset %s created.%n", dataset.getDatasetId().getDataset());
  }
}

다음 단계

(선택사항) App Engine용 Maven 또는 Gradle 플러그인 사용

App Engine 표준 또는 가변형 환경에서 개발하는 경우 앱을 직접 개발, 테스트, 배포하는 데 편리한 기능을 제공하는 Apache Maven 및 Gradle 빌드 도구 플러그인을 사용할 수 있습니다.

App Engine 표준 환경의 경우

App Engine 표준 환경에서는 Maven App Engine Plugin 또는 Gradle 플러그인을 사용합니다.

App Engine 가변형 환경의 경우

App Engine 가변형 환경에는 Maven App Engine Plugin 또는 Gradle 플러그인을 사용합니다.

추가 리소스