SHINDIG-973 by Nagy Attila: Making memcache pconnect optional (adapted for trunk)
[shindig.git] / BUILD-JAVA
blobfaa49f8d0c2a698754b4e99038f595f7c52d4621
1 Installing and running the various java servers
2 ============================================
4 1) Install Maven 2.0.8 or higher (see http://maven.apache.org)
6 2) Make sure the JAVA_HOME environment variable is set to the location of your
7    JDK/JRE, and that the maven executable is in your PATH.
9 3) From the base source directory ( eg cd .. )
10   * mvn - Cleans the source tree and then builds all the java classes, packages
11     them into jars and installs them in your local repository also adds source
12     jars ( by default ~/.m2/repository on Unix/OSX)
13   * mvn install - does the above but does not clean first
14   * mvn -Psocial - builds only the social parts
15   * mvn -Pgadgets - builds only the gadget parts
17   You must perform at least a "mvn" to place build all the artifacts and place
18   them in you local maven repository.
20 4) To Run, using a embedded Jetty Webapp container, in the base project
21        directory (eg cd .. )
22    * First do a full build as in step 3
23    * mvn -Prun - to run Jetty with both social and gadgets
24    * mvn -Prun -DrunType=gadgets - to run Jetty with only the gadgets server
25    * mvn -Prun -DrunType=social - to run Jetty with only the social server
27 5) To Run with a differnt port
28    * cd java/server
29    * mvn clean install jetty:run -DrunType=<full|gadgets|social> -Djetty.port=<port>
31 6) Once running, you can test the gadget rendering server by hitting this url:
32   http://localhost:8080/gadgets/ifr?url=http://www.labpixies.com/campaigns/todo/todo.xml
34   Or you can take a look at the sample container here:
35   http://localhost:8080/gadgets/files/samplecontainer/samplecontainer.html
38 ---------------------------------------------
40 Three steps to Use with Eclipse:
42   * Install the Maven Eclipse plugin
43   * Create and import the Eclipse Project files
44   * Clean up some Build Path errors.
46 1 - Install the Maven Eclipse plugin from
47     http://m2eclipse.sonatype.org/update/
49 2 - Creating and Importing the Eclipse Projects
51   * In the project base directory (same level as this file) run
53      mvn eclipse:m2eclipse
55   * In Eclipse, import the new projects in the File->Import->Existing Project
56     menu.
57   
58     Choose "Select Root Directory" and select the project base directory that this
59     file is in. This should find five Eclipse projects (common, features, gadgets,
60     server and social-api). Click "Finish".
62   * In each project, you will have a section called "Maven Dependencies", where
63     you can find all your jars and sources. Use options in the plugin for
64     downloading or source jars and updating dependencies.
66 3 - A Necessary Clean-up Step
68     You should have 6 errors when you start Eclipse until you clean up:
70     At the moment, you will have to edit the source dependencies to remove
71     nested folders. On each project, edit properties > Build Path > Source and
72     remove missing Source folders of "config", and "javascript". Do this for
73     each of "gadgets", and "server" projects.
75     There is a maven-eclipse-plugin bug tracking this issue in MECLIPSE-444.
77 To remove all eclipse-related metatdata from your shindig source tree, run:
79      mvn eclipse:clean
81 Building a Maven Site with Reports
82 ----------------------------------
84 To build a Maven based site with reports
86 Run:
87      mvn clean install site:site site:deploy -Dsite.localurl=file:///Users/ieb/public_html/shindig -Dproject.url=/~ieb/shindig
89 Where
90     file:///Users/ieb/public_html/shindig is the final directory where you want to deploy the site to
91     /~ieb/shindig is absolute site URL where you want the site to be hosted from. 
95    
96 For more information, see http://incubator.apache.org/projects/shindig.html