앱엔진 을 이용해서 개발서버 올리기 및 실서비스 배포 를 하다보면 Maven 명령이 상이한 경우 있다
이는 Maven 명령시 어느 플러그인을 사용하느냐에 따라 다른것이다.
위 URL 의 답변에 보면 잘 나와 있다. 답변 중에 링크 걸려 있는 스레드도 읽어 보면 많은 도움이 된다.
Google App Engine 문서에 따르면 App Engine Maven 명령어는 두가지 플러그인으로 다룰 수 있다고 나온다.
1. appcfg
2. Cloud SDK
1. appcfg 플러그인 을 사용할때
https://cloud.google.com/appengine/docs/java/tools/maven
1.1 pom.xml
<build>
<plugin>
<groupId>com.google.appengine</groupId>
<artifactId>gcloud-maven-plugin</artifactId>
<version>1.9.48</version>
</plugin>
</build>
1.2 maven command
- mvn appengine:devserver // 로컬 개발서버 올리기
- mvn appengine:update // 실서비스 배포하기
2. Cloud SDK 플러그인 을 사용할때
https://cloud.google.com/appengine/docs/java/tools/using-maven
2.1 pom.xml
<build>
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>1.0.0</version>
</plugin>
</build>
2.2 maven commnad
- mvn appengine:run // 로컬 개발서버 올리기
- mvn appengine:deploy
// 실서비스 배포하기
3. 두가지 모두 사용할 때
- mvn com.google.appengine:appengine-maven-plugin:devserver
- mvn com.google.appengine:appengine-maven-plugin:update
- mvn com.google.cloud.tools:appengine-maven-plugin:run
- mvn com.google.cloud.tools:appengine-maven-plugin:deploy
4. Cloud SDK 사용시 특정 버전에 배포고 싶을때
4.1 pom.xml
<properties> <app.deploy.version>버전</app.deploy.version> </properties>
위 설정이 없으면 새로운 버전이 자동으로 생성되고 생성된 버전에 대한 서비스 인스턴스도 자동 생성되어 배포된다.
5. gcloud-maven-plugin is deprecated
https://github.com/GoogleCloudPlatform/app-maven-plugin 에 가보면 deprecated 되었다고 나오고
appengine-maven-plugin 마이그레이션 하라고 나온다.
Cloud SDK 플러그인 으로 사용하는게 정신 건강에 좋겠네...
'Cloud Platform > Google Cloud Platform' 카테고리의 다른 글
App Engine + Cloud SQL 설정 (0) | 2017.10.24 |
---|---|
Google App Engine vs Google Compute Engine (0) | 2017.02.24 |
app.yml vs appengine-web.xml vs web.xml (0) | 2017.02.20 |
Google App Engine + Cron (Spring Scheduler) (0) | 2017.02.17 |
App Engine + Maven + Spring + MyBatis + Cloud SQL(MySQL) in STS(Spring Tool Suite) (0) | 2017.01.23 |