Hit the Ground Running with KME

If you would like to follow along with the session, please ensure that you have completed the following prerequisites before the session begins. It will require a good internet connection and about an hour of setup time. If you run into problems, feel free to contact me.

Download the following software

Eclipse IDE for Java EE Developers


Maven 3.0.4


Tomcat 7


Setup a development folder

Create a folder named Development in your user home directory. All work will be done in this folder.

Extract and copy maven to this folder.
Extract and copy tomcat to this folder.
Extract and copy eclipse to this folder.

prompt:Development kualidays$ pwd

prompt:Development kualidays$ ls -al
total 0
drwxr-xr-x   4 kualidays  staff  136 Oct  2 09:14 .
drwxr-xr-x+ 14 kualidays  staff  476 Oct  2 09:13 ..
drwx------@  9 kualidays  staff  306 Jan 17  2012 apache-maven-3.0.4
drwxr-xr-x@ 13 kualidays  staff  442 Sep  2 09:52 apache-tomcat-7.0.30
drwxr-xr-x@ 14 kualidays  staff  476 Jun 14 13:55 eclipse

Set up enviornment variables

Create a .profile (Mac) or setup environment variables (Windows)

export JAVA_HOME='/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home'
export MAVEN_HOME='/Users/kualidays/Development/apache-maven-3.0.4'
export MAVEN_OPTS='-Xmx2048m -XX:MaxPermSize=512m'

The main thing to do is set up JAVA_HOME, MAVEN_HOME, M2_HOME, PATH, and MAVEN_OPTS. On a mac, Java 6 is the latest current version. Java 7 will work as well on Windows if that is preferred. MAVEN_OPTS are not required for KME. The defaults should work, but I prefer to give maven more memory as shown above. If you have the memory available, I would recommend a setting similar to this.

Eclipse Configuration

Launch eclipse from the eclipse folder.

You will be prompted for a workspace location. Change it to the Development folder.

Turn off Build Automatically in the Project Menu. It will be checked by default.

Install the Maven plugin

Help->Eclipse Marketplace...
Search for maven
Click the Install button for 'Maven Integration for Eclipse' and follow Next buttons until Finish appears. Click Finish and allow Eclipse to restart.

Install the Subversion plugin

Help->Eclipse Marketplace...
Search for Subclipse
Click the Install button and follow Next buttons until Finish appears. Click Finish and allow Eclipse to restart. You may be prompted because some of Subclipse is unsigned. Allow the installation and continue.

Set up the KME repository

Window->Open Perspective->Other... and choose SVN Repository Exploring
Add KME: Right click in the SVN Repositories View (on the left) and New->Repository Location...
The location is: https://svn.kuali.org/repos/mobility
You may be prompted by Eclipse. Just click OK through the process.
Open the tree and then the tags folder. Right click on release-ga-2.0.0 and select Checkout...
Select the radio option 'Check out as a project in the workspace' and change the name to _release-ga-2.0.0 - This will ensure that your root project shows up at the top of the maven projects in eclipse.
Click finish and allow the project to be checked out.

Go back to the Java EE perspective.

Ensure that the project compiles and runs from the command line.

This will also download all maven artifacts needed for KME - this could take quite some time if you have never used maven before.

Download uisutilities.jar from https://wiki.kuali.org/download/attachments/314934983/uisutilities.jar?version=1&modificationDate=1337791178000

Open a terminal or CMD window.
Change to the download directory and install uisutilities.jar with the following command:
mvn install:install-file -DgroupId=uisutilities -DartifactId=uisutilities -Dversion=2.2.5 -Dpackaging=jar -Dfile=uisutilities.jar
You should see a 'BUILD SUCCESS' message.

Now change to the /Users/kualidays/Development/workspace/_release-ga-2.0.0 directory.
Then run the command: mvn -Dmaven.test.skip=true clean install
You should see a 'BUILD SUCCESS' message.

Test the webapp

Change to the mdot-webapp directory and start up the embedded Jetty web server with the following command:
mvn jetty:run

Open a web browser, webkit browsers like Chrome and Safari are the closed to mobile browsers, and navigate to: http://localhost:9999/mdot

To stop Jetty, hold down the Control key and type the 'c' key.

Import all KME maven projects

In the Java EE prospective, right click in the Project Explorer and select Import->Import... then open the Maven element and select 'Existing Maven Projects'
Next click the Browse button and select _release-ga-2.0.0 and click open.
Finally click the Finish button and allow all of the projects to import.