Tools used :
  1. JDK 1.6
  2. Eclipse 3.7 + Google Plugin for Eclipse
  3. Google App Engine Java SDK 1.6.3.1
Note
GAE supports Java 1.5 and 1.6.
P.S Assume JDK1.6 and Eclipse 3.7 are installed.

1. Install Google Plugin For Eclipse

Read this guide – how to install Google Plugin for Eclipse. If you install the Google App Engine Java SDK together with “Google Plugin for Eclipse“, then go to step 2, Otherwise, get the Google App Engine Java SDK and extract it.

2. Create New Web Application Project

In Eclipse toolbar, click on the Google icon, and select “New Web Application Project…
Figure – New Web Application Project
Choose new web application project
Figure – Deselect the “Google Web ToolKit“, and link your GAE Java SDK via the “configure SDK” link.
create new web application project
Click finished, Google Plugin for Eclipse will generate a sample project automatically.

3. Hello World

Review the generated project directory.
gae project directory
Nothing special, a standard Java web project structure.
HelloWorld/
  src/
    ...Java source code...
    META-INF/
      ...other configuration...
  war/
    ...JSPs, images, data files...
    WEB-INF/
      ...app configuration...
      lib/
        ...JARs for libraries...
      classes/
        ...compiled classes...
The extra is this file “appengine-web.xml“, Google App Engine need this to run and deploy the application.
File : appengine-web.xml
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  <application></application>
  <version>1</version>
 
  <!-- Configure java.util.logging -->
  <system-properties>
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
  </system-properties>
 
</appengine-web-app>

4. Run It Local

Right click on the project and run as “Web Application“.
Eclipse console :
//...
INFO: The server is running at http://localhost:8888/
30 Mac 2012 11:13:01 PM com.google.appengine.tools.development.DevAppServerImpl start
INFO: The admin console is running at http://localhost:8888/_ah/admin
Access URL http://localhost:8888/, see output
gae hello world demo
and also the hello world servlet – http://localhost:8888/helloworld
gae hello world demo

5. Deploy To Google App Engine

Register an account on https://appengine.google.com/, and create an application ID for your web application.
In this demonstration, I created an application ID, named “mkyong123″, and put it in appengine-web.xml.
File : appengine-web.xml
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  <application>mkyong123</application>
  <version>1</version>
 
  <!-- Configure java.util.logging -->
  <system-properties>
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
  </system-properties>
 
</appengine-web-app>
To deploy, see following steps:
Figure 1.1 – Click on GAE deploy button on the toolbar.
deploy to google app engine
Figure 1.2 – Sign in with your Google account and click on the Deploy button.
deploy to google app engine

deploy to google app engine
Done