blob: 0607b4ebeb783f654f4da84d030ec07085ded0ff [file] [log] [blame]
Apache Marmotta
===============
This code repository is still working in progress for the importation of LMF
into Marmotta.
For more information about the incubation status of the Marmotta project you
can go to the following page:
http://marmotta.apache.org
1. Building the Source Distribution
-----------------------------------
Apache Marmotta uses Maven to build, test, and install the software. A basic
build requires downloading and installing Maven and then running:
mvn clean install
This will compile, package and test all Apache Marmotta modules and install
it in your local Maven repository. In case you want to build your own
projects based on some of the libraries provided by Apache Marmotta, this
usually suffices.
The default loglevel for most unit and integration tests executed during the
build is INFO. To change the loglevel for either more or less output, you
can pass the loglevel as system property:
mvn clean install -Droot-level=TRACE|DEBUG|INFO|WARN|ERROR
Note that some of the integration tests start up parts of the Marmotta
platform during execution. The log level for these tests cannot be
changed, as Marmotta is taking over the log configuration in these
cases.
2. Building, Running and Deploying the Wep Application
------------------------------------------------------
Apache Marmotta also includes a default configuration for building a Java
Web Application that can be deployed in any Java Application Server. To
build the web application, first run
mvn clean install
in the project root. Then change to the launchers/marmotta-webapp directory
and run
mvn package
This will create a marmotta.war file in the target/ directory. You can
deploy this archive to any Java Application Server by copying it into
its deployment directory. More details can be found on:
http://marmotta.apache.org/installation.html
Alternatively, you can directly startup the Apache Marmotta Web Application
from Maven with a default configuration suitable for development. To try this
out, run
mvn tomcat7:run
wait until the system is started up and point your browser to
http://localhost:8080
When developing it is sometimes useful to always start with a clean confi-
guration of the system. Therefore, you can also start up the web application
as follows:
mvn clean tomcat7:run -Pcleanall
This command will remove any existing configuration directory before startup.
3. Building the Standalone Installer
------------------------------------
The build environment also offers to automatically build an installer package
that guides users through the installation with an easy-to-use installation
wizard. The installer is based on izPack and dynamically assembled when
building the package. To build the installer, first run
mvn clean install
in the project root. Then change to the launchers/marmotta-installer directory
and run
mvn package -Pinstaller
The build process will automatically create an appropriate installer confi-
guration from the Maven dependencies through the Apache Marmotta refpack
build plugin.
The installer can then be tried out by running
java -jar target/marmotta-installer-x.x.x.jar
4. Building with a Clean Repository
-----------------------------------
Sometimes it is useful to check if the build runs properly on a clean local
repository, i.e. simulate what happens if a user downloads the source and
runs the build. This can be achieved by running Maven as follows:
mvn clean install -Dmaven.repo.local=/tmp/testrepo
The command changes the local repository location from ~/.m2 to the
directory passed as argument
5. Simulating a Release
-----------------------
To test the release build without actually deploying the software, we have
created a profile that will deploy to the local file system. You can
simulate the release by running
mvn clean deploy -Pdist-local,marmotta-release,installer
Please keep in mind that building a release involves creating digital
signatures, so you will need a GPG key and a proper GPG configuration to run
this task.