<!-- Copyright (c) 2011-2013 PetalsLink, Red Hat Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.htmlAuthors:  * Mickael Istria (PetalsLink)  * Mickael Istria (Red Hat JBoss)--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0                      http://maven.apache.org/xsd/maven-4.0.0.xsd">	<modelVersion>4.0.0</modelVersion>	<groupId>org.eclipse.swtbot</groupId>	<artifactId>parent</artifactId>	<name>Eclipse SWTBot</name>	<version>2.3.0-SNAPSHOT</version>	<packaging>pom</packaging>	<prerequisites>		<maven>3.1.1</maven>	</prerequisites>	<properties>		<tycho-version>0.22.0</tycho-version>		<tycho-extras-version>${tycho-version}</tycho-extras-version>		<!-- Properties to enable jacoco code coverage analysis -->		<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>		<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>		<sonar.jacoco.reportPath>../target/jacoco.exec</sonar.jacoco.reportPath>		<!-- Enable this on Hudson CI @Eclipse.org -->		<cbi.jarsigner.skip>true</cbi.jarsigner.skip>		 <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/swtbot/org.eclipse.swtbot.git</tycho.scmUrl>	</properties>	<modules>		<module>devtools/target-platforms</module>		<!-- Plugins -->		<module>org.eclipse.swtbot.ant.junit</module>		<module>org.eclipse.swtbot.eclipse</module>		<module>org.eclipse.swtbot.eclipse.core</module>		<module>org.eclipse.swtbot.eclipse.dsl</module>		<module>org.eclipse.swtbot.eclipse.finder</module>		<module>org.eclipse.swtbot.eclipse.gef.finder</module>		<module>org.eclipse.swtbot.e4.finder</module>		<module>org.eclipse.swtbot.eclipse.spy</module>		<module>org.eclipse.swtbot.eclipse.test.junit</module>		<module>org.eclipse.swtbot.eclipse.ui</module>		<module>org.eclipse.swtbot.forms.finder</module>		<module>org.eclipse.swtbot.generator</module>		<module>org.eclipse.swtbot.generator.rules.workbench</module>		<module>org.eclipse.swtbot.generator.jdt</module>		<module>org.eclipse.swtbot.generator.ui</module>		<module>org.eclipse.swtbot.go</module>		<module>org.eclipse.swtbot.junit4_x</module>		<module>org.eclipse.swtbot.nebula.gallery.finder</module>		<module>org.eclipse.swtbot.swt.demo</module>		<module>org.eclipse.swtbot.swt.finder</module>		<module>org.eclipse.swt.examples</module>		<module>org.eclipse.ui.forms.examples</module>		<!-- features -->		<module>org.eclipse.swtbot</module>		<module>org.eclipse.swtbot.forms</module>		<module>org.eclipse.swtbot.eclipse.gef</module>		<module>org.eclipse.swtbot.ide</module>		<module>org.eclipse.swtbot.eclipse.junit.headless</module>		<module>org.eclipse.swtbot.generator.feature</module>		<module>org.eclipse.swtbot.nebula.gallery</module>		<!-- Repo -->		<module>org.eclipse.swtbot.updatesite</module>		<!-- Tests -->		<module>org.eclipse.swtbot.eclipse.ui.test</module>		<module>org.eclipse.swtbot.swt.finder.test.keyboards</module>		<module>org.eclipse.swtbot.forms.finder.test</module>		<module>org.eclipse.swtbot.eclipse.finder.test</module>		<module>org.eclipse.swtbot.nebula.gallery.finder.test</module>		<module>org.eclipse.swtbot.test</module>		<module>org.eclipse.swtbot.generator.test</module>		<module>org.eclipse.swtbot.generator.jdt.test</module>		<module>org.eclipse.swtbot.swt.finder.test</module>	</modules>	<mailingLists>		<mailingList>			<name>swtbot-dev Mailing List</name>			<post>swtbot-dev@eclipse.org</post>			<subscribe>https://dev.eclipse.org/mailman/listinfo/swtbot-dev</subscribe>			<unsubscribe>https://dev.eclipse.org/mailman/listinfo/swtbot-dev</unsubscribe>			<archive>http://dev.eclipse.org/mhonarc/lists/swtbot-dev</archive>		</mailingList>	</mailingLists>	<issueManagement>		<url>https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology;query_format=advanced;product=SWTBot</url>		<system>Bugzilla</system>	</issueManagement>	<scm>		<connection>scm:git:http://git.eclipse.org/gitroot/swtbot/org.eclipse.swtbot.git</connection>		<url>https://git.eclipse.org/c/swtbot/org.eclipse.swtbot.git/</url>	</scm>	<licenses>		<license>			<name>Eclipse Public License v1.0</name>			<comments>       All rights reserved.       This program and the accompanying materials are made       available under the terms of the Eclipse Public License v1.0       which accompanies this distribution, and is available at       http://www.eclipse.org/legal/epl-v10.htm			</comments>		</license>	</licenses>	<build>		<plugins>			<plugin>				<groupId>org.eclipse.tycho</groupId>				<artifactId>tycho-maven-plugin</artifactId>				<version>${tycho-version}</version>				<extensions>true</extensions>			</plugin>			<plugin>				<groupId>org.eclipse.tycho</groupId>				<artifactId>target-platform-configuration</artifactId>				<version>${tycho-version}</version>				<configuration>					<resolver>p2</resolver>					<environments>						<environment>							<os>linux</os>							<ws>gtk</ws>							<arch>x86</arch>						</environment>						<environment>							<os>linux</os>							<ws>gtk</ws>							<arch>x86_64</arch>						</environment>						<environment>							<os>win32</os>							<ws>win32</ws>							<arch>x86</arch>						</environment>						<environment>							<os>win32</os>							<ws>win32</ws>							<arch>x86_64</arch>						</environment>						<environment>							<os>macosx</os>							<ws>cocoa</ws>							<arch>x86</arch>						</environment>						<environment>							<os>macosx</os>							<ws>cocoa</ws>							<arch>x86_64</arch>						</environment>					</environments>					<includePackedArtifacts>true</includePackedArtifacts>				</configuration>			</plugin>			<plugin>				<groupId>org.eclipse.tycho</groupId>				<artifactId>tycho-packaging-plugin</artifactId>				<version>${tycho-version}</version>				<configuration>					<sourceReferences>						<generate>true</generate>					</sourceReferences>				</configuration>				<dependencies>					<dependency>						<groupId>org.eclipse.tycho.extras</groupId>						<artifactId>tycho-sourceref-jgit</artifactId>						<version>${tycho-extras-version}</version>					</dependency>				</dependencies>			</plugin>			<plugin>				<groupId>org.jacoco</groupId>				<artifactId>jacoco-maven-plugin</artifactId>				<version>0.7.4.201502262128</version>				<executions>					<execution>						<goals>							<goal>prepare-agent</goal>						</goals>							<configuration>							<!-- Where to put jacoco coverage report -->							<destFile>${sonar.jacoco.reportPath}</destFile>							<includes>								<include>org.eclipse.swtbot.*</include>							</includes>							<append>true</append>						</configuration>					</execution>				</executions>			</plugin>			<plugin>				<groupId>org.eclipse.tycho</groupId>				<artifactId>tycho-source-plugin</artifactId>				<version>${tycho-version}</version>				<executions>					<execution>						<id>plugin-source</id>						<goals>							<goal>plugin-source</goal>						</goals>					</execution>				</executions>			</plugin>			<plugin>				<groupId>org.eclipse.tycho.extras</groupId>				<artifactId>tycho-source-feature-plugin</artifactId>				<version>${tycho-version}</version>				<executions>					<execution>						<id>source-feature</id>						<goals>							<goal>source-feature</goal>						</goals>						<configuration>							<excludes>								<plugin id="org.apache.log4j"/>								<plugin id="org.eclipse.swtbot.ant.junit"/>							</excludes>						</configuration>					</execution>				</executions>			</plugin>			<!-- Those 4 mojos are for signing and packing -->			<plugin>				<groupId>org.eclipse.tycho.extras</groupId>				<artifactId>tycho-pack200a-plugin</artifactId>				<version>${tycho-version}</version>				<executions>					<execution>						<id>pack200-normalize</id>						<goals>							<goal>normalize</goal>						</goals>						<phase>package</phase>					</execution>				</executions>			</plugin>			<plugin>				<groupId>org.eclipse.cbi.maven.plugins</groupId>				<artifactId>eclipse-jarsigner-plugin</artifactId>				<version>1.1.2</version>				<executions>					<execution>						<id>sign</id>						<goals>							<goal>sign</goal>						</goals>						<phase>package</phase>					</execution>				</executions>			</plugin>			<plugin>				<groupId>org.eclipse.tycho.extras</groupId>				<artifactId>tycho-pack200b-plugin</artifactId>				<version>${tycho-version}</version>				<executions>					<execution>						<id>pack200-pack</id>						<goals>							<goal>pack</goal>						</goals>						<phase>package</phase>					</execution>				</executions>			</plugin>			<plugin>				<groupId>org.eclipse.tycho</groupId>				<artifactId>tycho-p2-plugin</artifactId>				<version>${tycho-version}</version>				<executions>					<execution>						<id>p2-metadata</id>						<goals>							<goal>p2-metadata</goal>						</goals>						<phase>package</phase>					</execution>				</executions>				<configuration>					<defaultP2Metadata>false</defaultP2Metadata>				</configuration>			</plugin>		</plugins>		<pluginManagement>			<plugins>				<!--This plugin's configuration is used to store Eclipse m2e settings only.                    It has no influence on the Maven build itself.-->				<plugin>					<groupId>org.eclipse.m2e</groupId>					<artifactId>lifecycle-mapping</artifactId>					<version>1.0.0</version>					<configuration>						<lifecycleMappingMetadata>							<pluginExecutions>								<pluginExecution>									<pluginExecutionFilter>										<groupId>org.jacoco</groupId>										<artifactId>jacoco-maven-plugin</artifactId>										<versionRange>[0.5,)										</versionRange>										<goals>											<goal>prepare-agent</goal>										</goals>									</pluginExecutionFilter>									<action>                                        <!-- m2e doesn't know what to do with jacoco,                                            let's ignore it or annoying error markers appear                                            see http://wiki.eclipse.org/M2E_plugin_execution_not_covered                                         -->										<ignore></ignore>									</action>								</pluginExecution>							</pluginExecutions>						</lifecycleMappingMetadata>					</configuration>				</plugin>			</plugins>		</pluginManagement>	</build>	<pluginRepositories>		<pluginRepository>			<id>cbi-release</id>			<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>		</pluginRepository>	</pluginRepositories>	<profiles>		<profile>			<id>helios</id>			<activation>				<activeByDefault>false</activeByDefault>			</activation>			<!-- TODO: Replace by usage of a target definition -->			<repositories>				<repository>					<id>Helios</id>					<layout>p2</layout>					<url>http://download.eclipse.org/releases/helios</url>				</repository>				<repository>					<id>Orbit-Helios</id>					<layout>p2</layout>					<url>http://download.eclipse.org/tools/orbit/downloads/drops/R20100519200754/repository</url>				</repository>			</repositories>		</profile>		<profile>			<id>indigo</id>			<activation>				<activeByDefault>false</activeByDefault>			</activation>			<build>				<plugins>					<plugin>						<groupId>org.eclipse.tycho</groupId>						<artifactId>target-platform-configuration</artifactId>						<version>${tycho-version}</version>						<configuration>							<target>								<artifact>									<groupId>org.eclipse.swtbot.target-platforms</groupId>									<artifactId>indigo</artifactId>									<version>2.3.0-SNAPSHOT</version>								</artifact>							</target>						</configuration>					</plugin>				</plugins>			</build>		</profile>		<profile>			<id>juno</id>			<activation>				<activeByDefault>false</activeByDefault>			</activation>			<build>				<plugins>					<plugin>						<groupId>org.eclipse.tycho</groupId>						<artifactId>target-platform-configuration</artifactId>						<version>${tycho-version}</version>						<configuration>							<target>								<artifact>									<groupId>org.eclipse.swtbot.target-platforms</groupId>									<artifactId>juno</artifactId>									<version>2.3.0-SNAPSHOT</version>								</artifact>							</target>						</configuration>					</plugin>				</plugins>			</build>		</profile>		<profile>			<id>kepler</id>			<activation>				<activeByDefault>false</activeByDefault>			</activation>			<build>				<plugins>					<plugin>						<groupId>org.eclipse.tycho</groupId>						<artifactId>target-platform-configuration</artifactId>						<version>${tycho-version}</version>						<configuration>							<target>								<artifact>									<groupId>org.eclipse.swtbot.target-platforms</groupId>									<artifactId>kepler</artifactId>									<version>2.3.0-SNAPSHOT</version>								</artifact>							</target>						</configuration>					</plugin>				</plugins>			</build>		</profile>		<profile>			<id>luna</id>			<activation>				<activeByDefault>true</activeByDefault>			</activation>			<build>				<plugins>					<plugin>						<groupId>org.eclipse.tycho</groupId>						<artifactId>target-platform-configuration</artifactId>						<version>${tycho-version}</version>						<configuration>							<target>								<artifact>									<groupId>org.eclipse.swtbot.target-platforms</groupId>									<artifactId>luna</artifactId>									<version>2.3.0-SNAPSHOT</version>								</artifact>							</target>						</configuration>					</plugin>				</plugins>			</build>		</profile>	</profiles></project>