WIP
There are some steps to build odysseus bundles with tycho.
Pomless build
Create a new folder .mvn on the root level of the project
add file extensions.xml with the following content:
<?xml version="1.0" encoding="UTF-8"?> <extensions> <extension> <groupId>org.eclipse.tycho.extras</groupId> <artifactId>tycho-pomless</artifactId> <version>1.2.0</version> </extension> </extensions>
If you want to create an update site, add
TODO
Create a root pom.xml similar to:
<project> <modelVersion>4.0.0</modelVersion> <groupId>de.uniol.inf.is.odysseus</groupId> <artifactId>de.uniol.inf.is.odysseus</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>pom</packaging> <parent> <groupId>de.uniol.inf.is.odysseus.tycho</groupId> <artifactId>de.uniol.inf.is.odysseus.tycho.configuration</artifactId> <version>1.0.0-SNAPSHOT</version> <relativePath>./odysseus_dev/de.uniol.inf.is.odysseus.tycho.configuration/</relativePath> </parent> <modules> <module>odysseus_dev</module> <module>de.uniol.inf.is.odysseus.update</module> <module>server/de.uniol.inf.is.odysseus.wsenrich</module> <module>server/de.uniol.inf.is.odysseus.wsenrich.feature</module> </modules> </project>
The modules section can also reference to a folder with another pom that defines the modules inside this folder. E.g.:
<modules> <module>odysseus_dev</module> <module>integration.testing</module> <module>de.uniol.inf.is.odysseus.update</module> </modules>
and the folder (here integration.testing) must contain a pom.xml similar to this:
project> <modelVersion>4.0.0</modelVersion> <groupId>de.uniol.inf.is.odysseus</groupId> <artifactId>de.uniol.inf.is.odysseus.integration.testing</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>pom</packaging> <parent> <groupId>de.uniol.inf.is.odysseus</groupId> <artifactId>de.uniol.inf.is.odysseus</artifactId> <version>1.0.0-SNAPSHOT</version> </parent> <modules> <module>compile.feature</module> <module>de.uniol.inf.is.odysseus.test.component.compile</module> <module>de.uniol.inf.is.odysseus.test.component.jira</module> <module>de.uniol.inf.is.odysseus.test.component.keyvalue</module> <module>de.uniol.inf.is.odysseus.test.component.keyvalue.feature</module> <module>de.uniol.inf.is.odysseus.test.component.nexmark</module> <module>de.uniol.inf.is.odysseus.test.component.operator</module> <module>de.uniol.inf.is.odysseus.test.component.parallelization</module> <module>de.uniol.inf.is.odysseus.test.component.parser.cql</module> <module>de.uniol.inf.is.odysseus.test.component.probabilistic</module> <module>de.uniol.inf.is.odysseus.test.feature</module> <module>jira.feature</module> <module>nexmark.feature</module> <module>operator.feature</module> <module>test</module> <module>xml</module> <module>xml.feature</module> </modules> </project>
todo ...