All the experimentation is based on the assumption that the reader is: a maven user, a linux user (with root acces on the server, knows a bit of Tomcat, MySQL. and apache Httpd
The prerequisites to have the MavenProjectServer up and running over a Linux OS are :
- A linux box (Mandriva 2007 - x86-64 was used during the experimentation)
- An user called MSU (Maven Server User) with its home directory located at /home/services/msu this directory will be noted as $(server.home)
- A set of directories inside $(server.home):
data noted as $(server.data.home)
CatalinaBase noted as $(server.tomcat.base)
A JDK installation (jdk1.6.0-b2 was used during the experimentation) located at $(java.home) with permissions set to be usable by MSU
A Tomcat installation (Tomcat 5.5.20 was used during the experimentation) located at $(tomcat.home) with permissions set to be run by MSU
A Maven 2 installation (maven 2.0.4 was used during the experimentation) located at $(m2.home) with permissions set to be usable by MSU
A MySQL installation (MySQL 5.0 was used during the experimentation) with networking enabled
An HTTP server (Apache Httpd 2.2 was used during the experimentation) with mod_proxy_ajp enabled
The java.home, tomcat.home, m2.home variables are undefined by purpose to let the reader defines its own (during the experimentation they were respectively set to /home/local/jdk1.6.0, /home/local/tomcat-5.5.20, /home/local/maven-2.0.4).
It is supposed that the Tomcat installation is cut in half with the running evironment (in $(tomcat.home)) on one side and the configuration environment (in $(server.tomcat.base)) on the other side; Read the Tomcat distribution's RUNNING.txt file for more information.
The Connection between Tomcat and MySQL is made using mysql-connector (can be found on the mysql site). The mysql-connector-java-VERSION-bin.jar should be put in the $(tomcat.home)/common/lib directory.
The tomcat's admin servlet should be installed (which is not in the default distribution). See the Tomcat site for more information.
The parentheses are used instead of the brackets for the variables definitions as they are confluence reserved signs.