<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 2015 BSI Business Systems Integration AG.
    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

    Contributors:
        BSI Business Systems Integration AG - initial API and implementation

-->
<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>

  <parent>
    <groupId>org.eclipse.scout</groupId>
    <artifactId>maven_sdk_plugin_config-master</artifactId>
    <version>2.0.1</version>
    <relativePath></relativePath>
  </parent>

  <groupId>org.eclipse.scout.sdk</groupId>
  <artifactId>org.eclipse.scout.sdk</artifactId>
  <version>5.2.0.M5</version>
  <packaging>pom</packaging>
  <name>Eclipse Scout SDK</name>
  <description>Eclipse Scout SDK</description>

  <prerequisites>
    <maven>3.2.2</maven>
  </prerequisites>

  <modules>
    <!-- Must be at first position -->
    <module>../scout-helloworld-app</module>

    <module>../org.eclipse.scout.sdk.core</module>
    <module>../org.eclipse.scout.sdk.core.test</module>
    <module>../org.eclipse.scout.sdk.core.s</module>
    <module>../org.eclipse.scout.sdk.core.s.test</module>

    <module>../org.eclipse.scout.sdk.s2e</module>
    <module>../org.eclipse.scout.sdk.s2e.doc</module>
    <module>../org.eclipse.scout.sdk.s2e.nls</module>
    <module>../org.eclipse.scout.sdk.s2e.ui</module>

    <module>../org.eclipse.scout.sdk-settings</module>
  </modules>

  <properties>
    <scout.base.version>5.2.0</scout.base.version>
    <base.version>${scout.base.version}</base.version>
    <org.eclipse.scout.rt_version>5.2.0.M5</org.eclipse.scout.rt_version>

    <master_coverage_jacoco_destFile>${basedir}/../org.eclipse.scout.sdk/target/jacoco-all.exec</master_coverage_jacoco_destFile>
    <!-- Sonar properties -->
    <sonar.branch>releases_5.2.x</sonar.branch>
    <sonar.jacoco.reportPath>${master_coverage_jacoco_destFile}</sonar.jacoco.reportPath>

    <!-- exclude the unit tests from sonar -->
    <sonar.exclusions>*.test/**</sonar.exclusions>

    <!-- exclude the unit tests and UI (we have no UI tests anyway) from sonar -->
    <sonar.coverage.exclusions>*.test/**</sonar.coverage.exclusions>

    <!-- dependencies to Eclipse artifacts deployed by org.eclipse.scout.sdk.core.releng/ -->
    <ecj>4.5</ecj>
    <ecj-maven>${ecj}</ecj-maven>

    <org.eclipse.osgi>3.10.100.v20150529-1857</org.eclipse.osgi>
    <org.eclipse.osgi-maven>${org.eclipse.osgi}</org.eclipse.osgi-maven>
    <org.eclipse.osgi-range>[3.10.100,3.10.101)</org.eclipse.osgi-range>

    <org.eclipse.equinox.common>3.7.0.v20150402-1709</org.eclipse.equinox.common>
    <org.eclipse.equinox.common-maven>${org.eclipse.equinox.common}</org.eclipse.equinox.common-maven>
    <org.eclipse.equinox.common-range>[3.7.0,3.7.1)</org.eclipse.equinox.common-range>

    <org.eclipse.equinox.registry>3.6.0.v20150318-1503</org.eclipse.equinox.registry>
    <org.eclipse.equinox.registry-maven>${org.eclipse.equinox.registry}</org.eclipse.equinox.registry-maven>
    <org.eclipse.equinox.registry-range>[3.6.0,3.6.1)</org.eclipse.equinox.registry-range>

    <org.eclipse.equinox.preferences>3.5.300.v20150408-1437</org.eclipse.equinox.preferences>
    <org.eclipse.equinox.preferences-maven>${org.eclipse.equinox.preferences}</org.eclipse.equinox.preferences-maven>
    <org.eclipse.equinox.preferences-range>[3.5.300,3.5.301)</org.eclipse.equinox.preferences-range>

    <org.eclipse.equinox.security>1.2.100.v20150423-1356</org.eclipse.equinox.security>
    <org.eclipse.equinox.security-maven>${org.eclipse.equinox.security}</org.eclipse.equinox.security-maven>
    <org.eclipse.equinox.security-range>[1.2.100,1.2.101)</org.eclipse.equinox.security-range>

    <org.eclipse.core.resources>3.10.0.v20150423-0755</org.eclipse.core.resources>
    <org.eclipse.core.resources-maven>${org.eclipse.core.resources}</org.eclipse.core.resources-maven>
    <org.eclipse.core.resources-range>[3.10.0,3.10.1)</org.eclipse.core.resources-range>

    <org.eclipse.core.commands>3.7.0.v20150422-0725</org.eclipse.core.commands>
    <org.eclipse.core.commands-maven>${org.eclipse.core.commands}</org.eclipse.core.commands-maven>
    <org.eclipse.core.commands-range>[3.7.0,3.7.1)</org.eclipse.core.commands-range>

    <org.eclipse.core.contenttype>3.5.0.v20150421-2214</org.eclipse.core.contenttype>
    <org.eclipse.core.contenttype-maven>${org.eclipse.core.contenttype}</org.eclipse.core.contenttype-maven>
    <org.eclipse.core.contenttype-range>[3.5.0,3.5.1)</org.eclipse.core.contenttype-range>

    <org.eclipse.core.expressions>3.5.0.v20150421-2214</org.eclipse.core.expressions>
    <org.eclipse.core.expressions-maven>${org.eclipse.core.expressions}</org.eclipse.core.expressions-maven>
    <org.eclipse.core.expressions-range>[3.5.0,3.5.1)</org.eclipse.core.expressions-range>

    <org.eclipse.core.filesystem>1.5.0.v20150421-0713</org.eclipse.core.filesystem>
    <org.eclipse.core.filesystem-maven>${org.eclipse.core.filesystem}</org.eclipse.core.filesystem-maven>
    <org.eclipse.core.filesystem-range>[1.5.0,1.5.1)</org.eclipse.core.filesystem-range>

    <!-- core.runtime -->
    <org.eclipse.core.runtime>3.11.0.v20150405-1723</org.eclipse.core.runtime>
    <org.eclipse.core.runtime-maven>${org.eclipse.core.runtime}</org.eclipse.core.runtime-maven>
    <org.eclipse.core.runtime-range>[3.11.0,3.11.1)</org.eclipse.core.runtime-range>

    <org.eclipse.core.jobs>3.7.0.v20150330-2103</org.eclipse.core.jobs>
    <org.eclipse.core.jobs-maven>${org.eclipse.core.jobs}</org.eclipse.core.jobs-maven>
    <org.eclipse.core.jobs-range>[3.7.0,3.7.1)</org.eclipse.core.jobs-range>

    <org.eclipse.text>3.5.400.v20150505-1044</org.eclipse.text>
    <org.eclipse.text-maven>${org.eclipse.text}</org.eclipse.text-maven>
    <org.eclipse.text-range>[3.5.400,3.5.401)</org.eclipse.text-range>

    <org.eclipse.search>3.10.0.v20150318-0856</org.eclipse.search>
    <org.eclipse.search-maven>${org.eclipse.search}</org.eclipse.search-maven>
    <org.eclipse.search-range>[3.10.0,3.10.1)</org.eclipse.search-range>

    <org.eclipse.ltk.core.refactoring>3.6.200.v20140826-0859</org.eclipse.ltk.core.refactoring>
    <org.eclipse.ltk.core.refactoring-maven>${org.eclipse.ltk.core.refactoring}</org.eclipse.ltk.core.refactoring-maven>
    <org.eclipse.ltk.core.refactoring-range>[3.6.200,3.6.201)</org.eclipse.ltk.core.refactoring-range>

    <org.eclipse.ltk.ui.refactoring>3.7.200.v20140625-1835</org.eclipse.ltk.ui.refactoring>
    <org.eclipse.ltk.ui.refactoring-maven>${org.eclipse.ltk.ui.refactoring}</org.eclipse.ltk.ui.refactoring-maven>
    <org.eclipse.ltk.ui.refactoring-range>[3.7.200,3.7.201)</org.eclipse.ltk.ui.refactoring-range>

    <org.eclipse.jdt.core>3.11.0.v20150602-1242</org.eclipse.jdt.core>
    <org.eclipse.jdt.core-maven>${org.eclipse.jdt.core}</org.eclipse.jdt.core-maven>
    <org.eclipse.jdt.core-range>[3.11.0,3.11.1)</org.eclipse.jdt.core-range>

    <org.eclipse.jdt.core.manipulation>1.5.100.v20141002-1241</org.eclipse.jdt.core.manipulation>
    <org.eclipse.jdt.core.manipulation-maven>${org.eclipse.jdt.core.manipulation}</org.eclipse.jdt.core.manipulation-maven>
    <org.eclipse.jdt.core.manipulation-range>[1.5.100,1.5.101)</org.eclipse.jdt.core.manipulation-range>

    <org.eclipse.jdt.ui>3.11.0.v20150527-0925</org.eclipse.jdt.ui>
    <org.eclipse.jdt.ui-maven>${org.eclipse.jdt.ui}</org.eclipse.jdt.ui-maven>
    <org.eclipse.jdt.ui-range>[3.11.0,3.11.1)</org.eclipse.jdt.ui-range>

    <org.eclipse.jdt.debug.ui>3.7.0.v20150505-1916</org.eclipse.jdt.debug.ui>
    <org.eclipse.jdt.debug.ui-maven>${org.eclipse.jdt.debug.ui}</org.eclipse.jdt.debug.ui-maven>
    <org.eclipse.jdt.debug.ui-range>[3.7.0,3.7.1)</org.eclipse.jdt.debug.ui-range>

    <org.eclipse.ui.workbench>3.107.0.v20150510-1732</org.eclipse.ui.workbench>
    <org.eclipse.ui.workbench-maven>${org.eclipse.ui.workbench}</org.eclipse.ui.workbench-maven>
    <org.eclipse.ui.workbench-range>[3.107.0,3.107.1)</org.eclipse.ui.workbench-range>

    <org.eclipse.ui.workbench.texteditor>3.9.100.v20141023-1946</org.eclipse.ui.workbench.texteditor>
    <org.eclipse.ui.workbench.texteditor-maven>${org.eclipse.ui.workbench.texteditor}</org.eclipse.ui.workbench.texteditor-maven>
    <org.eclipse.ui.workbench.texteditor-range>[3.9.100,3.9.101)</org.eclipse.ui.workbench.texteditor-range>

    <org.eclipse.jface>3.11.0.v20150602-1400</org.eclipse.jface>
    <org.eclipse.jface-maven>${org.eclipse.jface}</org.eclipse.jface-maven>
    <org.eclipse.jface-range>[3.11.0,3.11.1)</org.eclipse.jface-range>

    <org.eclipse.jface.text>3.10.0.v20150603-1752</org.eclipse.jface.text>
    <org.eclipse.jface.text-maven>${org.eclipse.jface.text}</org.eclipse.jface.text-maven>
    <org.eclipse.jface.text-range>[3.10.0,3.10.1)</org.eclipse.jface.text-range>

    <org.eclipse.swt.win32.win32.x86>3.104.0.v20150528-0211</org.eclipse.swt.win32.win32.x86>
    <org.eclipse.swt.win32.win32.x86-maven>${org.eclipse.swt.win32.win32.x86}</org.eclipse.swt.win32.win32.x86-maven>
    <org.eclipse.swt.win32.win32.x86-range>[3.104.0,3.104.1)</org.eclipse.swt.win32.win32.x86-range>

    <org.eclipse.ui.ide>3.11.0.v20150510-1749</org.eclipse.ui.ide>
    <org.eclipse.ui.ide-maven>${org.eclipse.ui.ide}</org.eclipse.ui.ide-maven>
    <org.eclipse.ui.ide-range>[3.11.0,3.11.1)</org.eclipse.ui.ide-range>

    <org.eclipse.ui.editors>3.9.0.v20150213-1939</org.eclipse.ui.editors>
    <org.eclipse.ui.editors-maven>${org.eclipse.ui.editors}</org.eclipse.ui.editors-maven>
    <org.eclipse.ui.editors-range>[3.9.0,3.9.1)</org.eclipse.ui.editors-range>

    <org.eclipse.ui>3.107.0.v20150507-1945</org.eclipse.ui>
    <org.eclipse.ui-maven>${org.eclipse.ui}</org.eclipse.ui-maven>
    <org.eclipse.ui-range>[3.107.0,3.107.1)</org.eclipse.ui-range>

    <org.eclipse.ui.console>3.6.0.v20150512-1341</org.eclipse.ui.console>
    <org.eclipse.ui.console-maven>${org.eclipse.ui.console}</org.eclipse.ui.console-maven>
    <org.eclipse.ui.console-range>[3.6.0,3.6.1)</org.eclipse.ui.console-range>

    <org.eclipse.ui.views>3.8.0.v20150422-0725</org.eclipse.ui.views>
    <org.eclipse.ui.views-maven>${org.eclipse.ui.views}</org.eclipse.ui.views-maven>
    <org.eclipse.ui.views-range>[3.8.0,3.8.1)</org.eclipse.ui.views-range>

    <org.eclipse.ui.forms>3.6.200.v20150506-2029</org.eclipse.ui.forms>
    <org.eclipse.ui.forms-maven>${org.eclipse.ui.forms}</org.eclipse.ui.forms-maven>
    <org.eclipse.ui.forms-range>[3.6.200,3.6.201)</org.eclipse.ui.forms-range>

    <org.eclipse.pde.core>3.10.100.v20150522-0332</org.eclipse.pde.core>
    <org.eclipse.pde.core-maven>${org.eclipse.pde.core}</org.eclipse.pde.core-maven>
    <org.eclipse.pde.core-range>[3.10.100,3.10.101)</org.eclipse.pde.core-range>

    <org.eclipse.pde.ui>3.8.200.v20150602-2024</org.eclipse.pde.ui>
    <org.eclipse.pde.ui-maven>${org.eclipse.pde.ui}</org.eclipse.pde.ui-maven>
    <org.eclipse.pde.ui-range>[3.8.200,3.8.201)</org.eclipse.pde.ui-range>

    <org.eclipse.jdt.launching>3.8.0.v20150527-0946</org.eclipse.jdt.launching>
    <org.eclipse.jdt.launching-maven>${org.eclipse.jdt.launching}</org.eclipse.jdt.launching-maven>
    <org.eclipse.jdt.launching-range>[3.8.0,3.8.1)</org.eclipse.jdt.launching-range>

    <org.eclipse.m2e.core>1.6.0.20150526-2032</org.eclipse.m2e.core>
    <org.eclipse.m2e.core-maven>${org.eclipse.m2e.core}</org.eclipse.m2e.core-maven>
    <org.eclipse.m2e.core-range>[1.6.0,1.8)</org.eclipse.m2e.core-range>

    <org.eclipse.m2e.core.ui>1.6.0.20150526-2032</org.eclipse.m2e.core.ui>
    <org.eclipse.m2e.core.ui-maven>${org.eclipse.m2e.core.ui}</org.eclipse.m2e.core.ui-maven>
    <org.eclipse.m2e.core.ui-range>[1.6.0,1.8)</org.eclipse.m2e.core.ui-range>

    <org.eclipse.m2e.archetype.common>1.6.0.20150526-2031</org.eclipse.m2e.archetype.common>
    <org.eclipse.m2e.archetype.common-maven>${org.eclipse.m2e.archetype.common}</org.eclipse.m2e.archetype.common-maven>
    <org.eclipse.m2e.archetype.common-range>[1.6.0,1.8)</org.eclipse.m2e.archetype.common-range>

    <maven.model.dependency.version>3.3.3</maven.model.dependency.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core</artifactId>
        <version>5.2.0.M5</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.test</artifactId>
        <version>5.2.0.M5</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.s</artifactId>
        <version>5.2.0.M5</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.s.test</artifactId>
        <version>5.2.0.M5</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e</artifactId>
        <version>5.2.0.M5</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e</artifactId>
        <version>5.2.0.M5</version>
        <classifier>sources</classifier>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.doc</artifactId>
        <version>5.2.0.M5</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.doc</artifactId>
        <version>5.2.0.M5</version>
        <classifier>sources</classifier>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.nls</artifactId>
        <version>5.2.0.M5</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.nls</artifactId>
        <version>5.2.0.M5</version>
        <classifier>sources</classifier>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.ui</artifactId>
        <version>5.2.0.M5</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.ui</artifactId>
        <version>5.2.0.M5</version>
        <classifier>sources</classifier>
      </dependency>

      <!-- Build Dependencies -->
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-model</artifactId>
        <version>${maven.model.dependency.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>ecj</artifactId>
        <version>${ecj-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.core.commands</artifactId>
        <version>${org.eclipse.core.commands-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.equinox</artifactId>
        <version>${org.eclipse.equinox-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.equinox.common</artifactId>
        <version>${org.eclipse.equinox.common-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.equinox.preferences</artifactId>
        <version>${org.eclipse.equinox.preferences-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.equinox.registry</artifactId>
        <version>${org.eclipse.equinox.registry-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.equinox.security</artifactId>
        <version>${org.eclipse.equinox.security-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.core.expressions</artifactId>
        <version>${org.eclipse.core.expressions-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.core.filesystem</artifactId>
        <version>${org.eclipse.core.filesystem-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.core.resources</artifactId>
        <version>${org.eclipse.core.resources-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.core.runtime</artifactId>
        <version>${org.eclipse.core.runtime-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.core.manipulation</artifactId>
        <version>${org.eclipse.jdt.core.manipulation-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.core</artifactId>
        <version>${org.eclipse.jdt.core-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.debug.ui</artifactId>
        <version>${org.eclipse.jdt.debug.ui-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.launching</artifactId>
        <version>${org.eclipse.jdt.launching-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.ui</artifactId>
        <version>${org.eclipse.jdt.ui-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jface.text</artifactId>
        <version>${org.eclipse.jface.text-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ltk.core.refactoring</artifactId>
        <version>${org.eclipse.ltk.core.refactoring-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ltk.ui.refactoring</artifactId>
        <version>${org.eclipse.ltk.ui.refactoring-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.m2e.core</artifactId>
        <version>${org.eclipse.m2e.core-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.m2e.core.ui</artifactId>
        <version>${org.eclipse.m2e.core.ui-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.archetype</groupId>
        <artifactId>archetype-catalog</artifactId>
        <version>2.3</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.archetype</groupId>
        <artifactId>archetype-common</artifactId>
        <version>2.3</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.m2e.archetype.common</artifactId>
        <version>${org.eclipse.m2e.archetype.common-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.pde.core</artifactId>
        <version>${org.eclipse.pde.core-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.pde.ui</artifactId>
        <version>${org.eclipse.pde.ui-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.search</artifactId>
        <version>${org.eclipse.search-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ui.console</artifactId>
        <version>${org.eclipse.ui.console-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ui.editors</artifactId>
        <version>${org.eclipse.ui.editors-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ui.ide</artifactId>
        <version>${org.eclipse.ui.ide-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ui.workbench</artifactId>
        <version>${org.eclipse.ui.workbench-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.ui</artifactId>
        <version>${org.eclipse.ui-maven}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-embedder</artifactId>
        <version>3.3.3</version>
      </dependency>

      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.1.3</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>1.7.12</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.aether</groupId>
        <artifactId>aether-connector-basic</artifactId>
        <version>1.0.2.v20150114</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.aether</groupId>
        <artifactId>aether-transport-wagon</artifactId>
        <version>1.0.2.v20150114</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-http</artifactId>
        <version>2.10</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-provider-api</artifactId>
        <version>2.10</version>
      </dependency>

      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.1</version>
      </dependency>

      <!-- Test Dependencies -->
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.12</version>
      </dependency>

      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>15.0</version>
      </dependency>

      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.rt</groupId>
        <artifactId>org.eclipse.scout.rt</artifactId>
        <version>${org.eclipse.scout.rt_version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.eclipse.scout</groupId>
          <artifactId>eclipse-settings-maven-plugin</artifactId>
          <dependencies>
            <dependency>
              <groupId>org.eclipse.scout.sdk</groupId>
              <artifactId>org.eclipse.scout.sdk-settings</artifactId>
              <version>${project.version}</version>
            </dependency>
          </dependencies>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>flatten-maven-plugin</artifactId>
        <inherited>false</inherited>
        <configuration>
          <flattenMode>bom</flattenMode>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-scm-plugin</artifactId>
        <configuration>
          <basedir>${project.basedir}/..</basedir>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <!-- primarily for license header generation -->
  <inceptionYear>2015</inceptionYear>

  <organization>
    <name>Eclipse Scout Project</name>
    <url>https://eclipse.org/scout</url>
  </organization>

  <licenses>
    <license>
      <name>Eclipse Public License v1.0</name>
      <url>http://www.eclipse.org/legal/epl-v10.html</url>
      <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>

  <developers>
    <developer>
      <name>Eclipse Scout Committers</name>
      <email>scout-dev@eclipse.org</email>
      <organization>Eclipse</organization>
      <organizationUrl>https://www.eclipse.org</organizationUrl>
    </developer>
  </developers>

  <mailingLists>
    <mailingList>
      <name>scout-dev Mailing List</name>
      <subscribe>https://dev.eclipse.org/mailman/listinfo/scout-dev</subscribe>
      <unsubscribe>https://dev.eclipse.org/mailman/listinfo/scout-dev</unsubscribe>
      <post>scout-dev@eclipse.org</post>
      <archive>http://dev.eclipse.org/mhonarc/lists/scout-dev</archive>
    </mailingList>
  </mailingLists>

  <scm>
    <connection>scm:git:git://git.eclipse.org/gitroot/scout/org.eclipse.scout.sdk.git</connection>
    <developerConnection>scm:git:ssh://${eclipse_gerrit_username}@git.eclipse.org:29418/scout/org.eclipse.scout.sdk</developerConnection>
    <tag>5.2.0.M5</tag>
    <url>http://git.eclipse.org/c/scout/org.eclipse.scout.sdk.git/</url>
  </scm>

  <issueManagement>
    <system>Bugzilla</system>
    <url>https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology;component=Scout SDK;product=Scout;query_format=advanced</url>
  </issueManagement>

  <repositories>
    <repository>
      <snapshots></snapshots>
      <id>eclipse.snapshot</id>
      <name>eclipse-snapshot-repo</name>
      <url>https://repo.eclipse.org/content/groups/snapshots/</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <snapshots></snapshots>
      <id>eclipse.snapshot</id>
      <name>eclipse-snapshot-repo</name>
      <url>https://repo.eclipse.org/content/groups/snapshots/</url>
    </pluginRepository>
  </pluginRepositories>

  <distributionManagement>
    <repository>
      <id>repo.eclipse.org</id>
      <name>Scout Repository - Releases</name>
      <url>https://repo.eclipse.org/content/repositories/scout-releases/</url>
    </repository>
    <snapshotRepository>
      <id>repo.eclipse.org</id>
      <name>Scout Repository - Snapshots</name>
      <url>https://repo.eclipse.org/content/repositories/scout-snapshots/</url>
    </snapshotRepository>
  </distributionManagement>

  <profiles>
    <profile>
      <id>release.setversion</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>com.google.code.maven-replacer-plugin</groupId>
            <artifactId>replacer</artifactId>
            <executions>
              <execution>
                <id>replace_scout_version_parent_pom</id>
                <goals>
                  <goal>replace</goal>
                </goals>
                <phase>generate-resources</phase>
                <configuration>
                  <basedir>${project.basedir}</basedir>
                  <includes>
                    <include>pom.xml</include>
                  </includes>
                  <token>(\\x3corg.eclipse.scout.rt_version\\x3e)[0-9A-Z\\.\\-]*(\\x3c/org.eclipse.scout.rt_version\\x3e)</token>
                  <value>$1${org.eclipse.scout.rt_version}$2</value>
                  <unescape>true</unescape>
                </configuration>
              </execution>
              <execution>
                <id>replace_scout_version_project_helper</id>
                <goals>
                  <goal>replace</goal>
                </goals>
                <phase>generate-resources</phase>
                <configuration>
                  <basedir>${project.basedir}/..</basedir>
                  <includes>
                    <include>**/ScoutProjectNewHelper.java</include>
                  </includes>
                  <token>(_VERSION = \\")[0-9A-Z\\.\\-]*(\\";)</token>
                  <value>$1${org.eclipse.scout.rt_version}$2</value>
                  <unescape>true</unescape>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>release.checkin</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <configuration>
              <includes>*/pom.xml,**/ScoutProjectNewHelper.java,*/src/main/resources/archetype-resources/*/pom.xml,*/feature.xml,*/category.xml</includes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
