Apache Maven은 자바용 빌드 자동화 도구로,
App Engine은 앱을 빌드하고 App Engine에 배포하는 데 사용할 수 있는 Maven 플러그인을 제공합니다. 이 플러그인에서는 엔터프라이즈 애플리케이션 아카이브(EAR) 프로젝트를 지원하지 않습니다.
시작하기 전에
다음 명령어를 실행하여 Maven 설치 여부와 버전을 확인합니다.
mvn -v
Maven이 설치된 경우
Apache Maven
으로 시작하는 정보의 긴 문자열 다음에3.9.1
와 같은 버전 번호가 표시됩니다.Maven 3.9.1 이상이 설치되어 있지 않으면 다음을 수행합니다.
아직 수행하지 않았으면 여기에 설명된 단계에 따라 gcloud CLI를 다운로드하고, Google Cloud 프로젝트를 만들고, App Engine 앱을 초기화합니다.
gcloud CLI
app-engine-java
구성요소를 설치합니다.gcloud components install app-engine-java
App Engine Maven 플러그인 추가
App Engine Maven 플러그인을 사용하려면 프로젝트 pom.xml
파일의 plugins
섹션에 다음 줄을 추가합니다.
<plugins>
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>2.8.1</version>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.4.56.v20240826</version>
</plugin>
</plugins>
Jetty Maven 플러그인을 사용하여 로컬에서 앱 테스트
개발 단계에서는 언제든지 Jetty Maven 플러그인을 호출하여 개발 서버에서 앱을 실행하고 테스트할 수 있습니다.
개발 서버에서 앱을 실행하려면 다음 안내를 따르세요.
아직 앱을 빌드하지 않았다면 앱을 빌드합니다.
mvn package
디렉터리를 프로젝트의 최상위 수준으로 변경하고(예시:
myapp
) Maven을 호출하여 앱을 실행합니다.mvn jetty:run
서버가 시작되기를 기다렸다가 브라우저에서
http://localhost:8080/
으로 이동하여 앱에 액세스합니다.Control+C를 눌러서 앱과 개발 서버를 종료합니다.
앱 빌드 및 배포
프로젝트 pom.xml
파일에 App Engine Maven 플러그인을 추가한 후에 다음 명령어를 사용하여 앱을 빌드하고 배포할 수 있습니다.
mvn package appengine:deploy -Dapp.deploy.projectId=PROJECT_ID
PROJECT_ID를 Google Cloud 프로젝트의 ID로 바꿉니다. pom.xml
파일에 이미 프로젝트 ID가 지정된 경우 실행할 명령어에 -Dapp.deploy.projectId
속성을 포함하지 않아도 됩니다.
package
목표는 앱을 빌드 및 패키징하고 appengine:deploy
목표는 다음을 수행합니다.
새로운 앱 버전에 고유한 버전 ID를 생성합니다.
App Engine에 새 버전을 배포합니다.
모든 트래픽을 새 버전으로 라우팅합니다.
배포 기본값 변경
appengine:deploy
명령어에서 매개변수를 전달하여 기본 배포 동작을 변경할 수 있습니다. 예를 들어 다음 명령어는 pom.xml
파일에 정의된 서비스를 특정 Google Cloud 프로젝트에 배포하고 커스텀 버전 ID를 서비스에 할당하며 새 버전에 대한 자동 트래픽 라우팅을 사용 중지합니다.
mvn appengine:deploy -Dapp.deploy.projectId=PROJECT_ID -Dapp.deploy.version=VERSION_ID -Dapp.deploy.promote=False
appengine:deploy
명령어를 사용하여 cron.yaml
, dispatch.yaml
, index.yaml
과 같은 구성 파일을 배포할 수도 있습니다.
자세한 내용은 appengine:deploy
참조를 확인하세요.
다음 단계
- JDK 21 App Engine Maven 플러그인 샘플을 검토하세요.
- GitHub에서 플러그인 코드를 살펴보고 문제를 보고합니다.
- App Engine Maven 목표 및 매개변수를 참조하여 태스크에 매개변수를 지정하는 방법을 알아보세요.