- 1 Downloading the Kernel
- 1.1 Maven Repositories
- 1.1.1 Release Repository
- 1.1.2 Terracotta
- 1.1.3 Snapshots
- 1.2 Kernel components
- 1.2.1 Spring deployment module
- 1.2.2 Terracotta Annotations
- 1.3 JDK Configuration
Downloading the Kernel
The kernel requires Maven 2.0.9 or later and Java JDK1.6 or later to build and run. Although you could use another build tool like ant you would have to handle all the dependency resolution and assembly yourself.
Maven Repositories
The releases are all available in the main release repository which you will need to add to your pom for maven to use. You will also need to reference the java.net repositories (for JAXB) and the Terracotta repository if you plan to use Terracotta annotations (if you are not using their annotations then this repository is not required).
Release Repository
For all kernel based applications you need to reference the maven repository containing the kernel's artifacts. Inside your pom, you need to add the following to the repositories and pluginRepositories sections:
<repository>
<id>retep.releases</id>
<name>retep.org Maven 2 Repository</name>
<url>http://reteptools.kenai.com/maven/releases/</url>
</repository>
<!-- required for JAXB -->
<repository>
<id>maven2-repository.dev.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2/</url>
<layout>default</layout>
</repository>
<repository>
<id>java.net</id>
<url>http://download.java.net/maven/1</url>
<layout>legacy</layout>
</repository>
<!-- required for our assembly plugin -->
<pluginRepository>
<id>retep.releases</id>
<name>retep.org Maven 2 Repository</name>
<url>http://reteptools.kenai.com/maven/releases/</url>
</pluginRepository>
Terracotta
If you are using terracotta's annotations then you need to add the following to the pom's repositories section:
<id>terracotta-repository</id>
<url>http://www.terracotta.org/download/reflector/maven2</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
Snapshots
Occasionally I may publish snapshot's of a future release. This will be used for 9.9 and later versions but you must be aware that these versions are developmental. To use the snapshot repository add the following to the repositories and pluginRepositories sections:
<repository>
<id>retep.snapshots</id>
<name>retep.org Maven 2 Repository</name>
<url>http://reteptools.kenai.com/maven/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<pluginRepository>
<id>retep.snapshots</id>
<name>retep.org Maven 2 Repository</name>
<url>http://reteptools.kenai.com/maven/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
Kernel components
For artifacts that contain objects that are deployed within a kernel you will need to add some dependencies. Currently only the spring deployment module is supported but future modules will be similar.
Spring deployment module
For a spring based application the following dependencies should be included within your component's pom:
<dependency>
<groupId>uk.org.retep.microkernel</groupId>
<artifactId>core</artifactId>
<version>[9.8.2,)</version>
</dependency>
<dependency>
<groupId>uk.org.retep</groupId>
<artifactId>retepTools</artifactId>
<version>[9.8,)</version>
</dependency>
Terracotta Annotations
If your component uses Terracotta annotations then you need to add the relevant dependency as well. The following is currently used by the examples/app module in the source but you should use the current version for your Terracotta installation:
<dependency>
<groupId>org.terracotta.modules</groupId>
<artifactId>tim-annotations</artifactId>
<version>1.2.2</version>
</dependency>
JDK Configuration
As all retep projects have a base minimum of Java 6 (JDK1.6) you should set the source and target to 1.6:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>





