2012.11.11 20:22

[Google App Engines]Getting Started - SDK 설치 및 환경설정, 데모소스 구동

Google App Engine 에 대한 자료는 http://code.google.com/intl/ko-KR/appengine/docs/java/gettingstarted/ 에서 참조 할 수 있습니다.


해당 튜토리얼은 기본 적인 구글 앱 엔진의 사용 법(개발/배포)과 관련된 예제들(guest book, app engine services, google accounts)의 데모를 소개 하도록 하겠습니다.

아래는 해당 튜토리얼 섹션 들 입니다.

  • 앱엔진 소개
  • JAVA SDK 설치 단계
  • 프로젝트 시작 하기
  • Users Service사용하기
  • JSP 사용하기
  • JDO를 이용한 Datastore사용하기
  • Static Files사용하기
  • 내 프로젝트 업로드하기

Introduction(앱엔진 소개)

구글 앱엔진에 오신 것을 환영 합니다. 앱 엔진은 어플리케이션을 몇분안에 쉽게 만들수 있습니다. 그리고 앱엔진은 시작시 무료 입니다(내 앱을 업로드 하고 공유하는데, 비용이나 조건은 없습니다.)

구글 앱엔진은 파이썬으로도 개발 할 수 있다. 현재 보고 있는 튜토리얼은 자바 버젼 입니다. 

현재 앤엔진 소개에서 아래의 내용들을 다루도록 하겠습니다.
  • 서블릿과 JSP로 앱엔진 어플리케이션 제작
  • 이클립스 통한 앱엔진 프로젝트 만들기
  • 앱엔진용 이클립스에서 구글 플러그인 사용하기
  • Java Data Objects로 앱엔진 datastore사용하기
  • 구글 계정과 앱엔진 어플리케이션 통합 하기
  • 앱엔진에 내 어플 등록 하기
해당 튜토리얼을 끝까지 수행 하면 당신은 잘 동작하는 어플리케이션을 구현 할 수 있을 것이다. 예제인 guestbook 을 통해서 게시판에 사용자 글 등록하는 것을 구현 할 것입니다.

영어 해석이 쉽지 않군요. 문법상관없이 제가 이해하는 대로 적습니다. 이해해 주세요. 보시면서 아래 내용들을 반드시 따라서 해보세요. 그래야 배웁니다. 저도 지금 해석하라 따라하랴 정신 없네요 ^^;;

Installing the Java SDK

구글 앱엔진은 현재 파이썬과 자바 버젼이 존재 합니다. 지금 튜토리얼이 자바이니 당연히 Java SDK를 설치 해야겠죠 이번이 그 단계 입니다. 외국 사람들은 참 친절해요 너무 설명이 세세 합니다.

현재 설치 하려는 SDK에는 웹서버가 포함 됩니다. 그리고 앱엔진을 테스트 할 수 있는 시뮬레이션, PC내에서 실행 할 수 있는 datastore, Google Accounts 그리고 웹주소 실행, 이메일 보내기를 할 수 있다.

Getting Java(자바로 시작 하기)

구글 앱엔진은 자바 버젼 5,6을 지원 합니다. 그중에서도 6일 사용하는 것이 좋습니다. (최적화 되었다고 하네요) 자바 6을 사용하는 것이 컴파일 테스트 수행시 구글 앱엔진과 가장 유사한 환경을 제공 합니다.

맥사용 개발자 들은 자바6버젼을 쉽게 사용할 수 없습니다.(정말?) 구글앱엔진은 자바5와 호환이 되니, 컴파일 된 classes, JARs를 업로드 하면 됩니다.

만일 정말 필요로 해서 맥사용자들이 다운로드 및 설치를 하려면 Apple's Java developer site에서 맥 OS용 최신 버젼을 다운로드 해서 사용하시기 바랍니다.(맥이 최신버젼 지원이 좀 늦은 것 같네요)

JDK를 실치 하고, 커멘트 창(시작 -> 실행 ->cmd입력)에서 현재의 Java버젼을 확인 합니다. 아래와같이

java -version
javac -version

Using Eclipse and the Google Plugin for Eclipse(이클립스와 구글 플러그인 사용)

현재 내 컴퓨터에 이클립스가 설치 되어 있는 경우 가장 쉽게 환경을 구축 하는 방법은 Google Plugin for Eclipse을 기존 이클립스에 올려서 사용하는 것이다. 해당 플러그인에는 빌드, 배포 할수 있는 모든 기능이 포함 되어 있습니다.

플러그인은 이클립스 버젼 3.3, 3.4, 3.5 에서 사용 가능 하고, 이클립스의 소프트웨어 업데이트 기능을 통해서 플러그인을 설치 할 수 있습니다. 버젼별 플러그인 다운로드 경로는 아래와 같습니다.

  • 이클립스 3.3(Europa) 용 플러그인
  • http://dl.google.com/eclipse/plugin/3.3
  • 이클립스 3.4(Ganymede) 용 플러그인
  • http://dl.google.com/eclipse/plugin/3.4
  • 이클립스 3.5(Galileo) 용 플러그인
  • http://dl.google.com/eclipse/plugin/3.5
플러그인 설치 방법에 대한 상세 내용은 Using the Google Eclipse Plugin을 참고하세요.

Getting the SDK

이클립스와 구글플러그인을 사용한다면 이클립스의 소프트웨어 업데이트를 통해서 SDK를 설치 하세요. 이클립스를 사용하지 않는 개발자는 "Google App Engine Java SDK" 컴포넌트를 사용하시기 바랍니다(개인적인 의견인데 이클립스를 사용하는게 좋을 듯 하세요)

이클립스와 구글플러그인을 사용하지 않으면 App Engine Java SDK를 다운 받으세요.

Download the App Engine Java SDK 다운 받고 압축을 풀어 하드디스크에 저장하세요.

Trying a Demo Application

App Engine SDK는 demos 경로 아래 몇가지의 데모 어플리케이션이 있다. "guest book" 어플리케이션을 이번 튜토리얼을 통해 생성하고 될 것이고, guestbook/ 경로 아래 위치 하게 된다. 해당 데모는 이미 컴파일 된 버젼으로 바로 테스트 해볼 수 있다.

내 컴퓨터에 이클립스 및 SDK가 설치 되어 있으면 plugins/com.google.appengine.eclipse.sdkbundle_VERSION/ VERSION은 SDK별 버젼숫자이다. 커멘트창(도스창)에서 working directory를 변경하세요(Mac OS X, Linux 사용자) chmod u+x dev_appserver.sh(윈도우 사용이 간단 할 듯 합니다.)

윈도우 환경일 경우, 개발 서버내에서 guest book 데모를 시작 할 수 있다. 아래 와 같이 하세요.
appengine-java-sdk\bin\dev_appserver.cmd appengine-java-sdk\demos\guestbook\war

Mac OS X 또는 Linux 환경일 경우는 아래와 같이 하세요.
./appengine-java-sdk/bin/dev_appserver.sh appengine-java-sdk/demos/guestbook/war

해당 개발 서버 시작 되었고, 8080포트에서 대기 상태로 되어 있다. 웹브라우저를 통해 접속 하세요.

막상 제가 해보니 안되네요 제 환경은 갈릴레오에 구글 엡엔진 플러그인 설치 했습니다. 윈도우 환경이구요. 일단 경로 부터 좀 다릅니다. 아래가 제경로 입니다. 먼저 플러그인 설치 경로로 이동 합니다.(좀 복잡 합니다.)
D:\eclipse-galileo\plugins\com.google.appengine.eclipse.sdkbundle_1.2.2.v200907291526
appengine-java-sdk-1.2.2\bin\dev_appserver.cmd appengine-java-sdk-1.2.2\demos\guestbook\war

경로 실행 하면 전 실행이 안되네요 안되는 이유를 보니 sdk버젼에 따라 경로가 다릅니다. 본인데 맞게 수정하세요. 수정하고 실행을 하니 아래와 같이 에러가 발생 합니다. 제 컴을 보니 오라클 10g express가 8080을 점유하고 있어서 그런 것 같습니다.

Could not open the requested socket: Address already in use: bind
Try overriding --address and/or --port.

오라클의 데몬을 죽이고 다시 해보겠습니다.(새로운 뭔가를 할때마다 클린 PC가 있으면 좋겠습니다.)
The server is running at http://localhost:8080/ 라고 화면에 나오네요 서비스가 동작이 됩니다.
그런데 웹에서 화면에 에러가 나오네요 에러를 보니 javac.exe를 실행 을 못한다고 합니다. 

해서 제 컴의 javac.exe를 검색해보니 3개가 나옵니다. 그중에서 6.0버젼의 javac.exe의 path를 시스템의 환경 변수에 추가 를 했습니다. 그리고 다시 실행을 하니 동작이 되네요 아래는 동작되는 웹 화면 입니다.


Trackback 0 Comment 0