<?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.13</version>
    <relativePath></relativePath>
  </parent>

  <groupId>org.eclipse.scout.sdk</groupId>
  <artifactId>org.eclipse.scout.sdk</artifactId>
  <version>8.0.0.004_Photon_RC1</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>../scout-jaxws-module</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.test</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>8.0.0</scout.base.version>
    <base.version>${scout.base.version}</base.version>
    <org.eclipse.scout.rt_version>8.0.0.004_Photon_RC1</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_8.0.x</sonar.branch>
    <master_test_timeout>1800</master_test_timeout>
    <sonar.jacoco.reportPath>${master_coverage_jacoco_destFile}</sonar.jacoco.reportPath>

     <!-- exclude fixtures -->
    <sonar.exclusions>
      **/src/main/fixture/**/*,
      **/src/main/client/**/*,
      **/src/main/shared/**/*
    </sonar.exclusions>

    <!-- exclude fixtures, archetypes, UI -->
    <sonar.coverage.exclusions>
      **/src/main/fixture/**/*,
      **/src/main/client/**/*,
      **/src/main/shared/**/*,
      **/src/main/resources/archetype-resources/**/*,
      **/src/main/java/org/eclipse/scout/sdk/s2e/nls/**/*,
      **/src/main/java/org/eclipse/scout/sdk/s2e/ui/**/*,
      **/src/main/java/org/eclipse/scout/sdk/s2e/doc/**/*,
      **/org/eclipse/scout/maven/plugins/updatesite/**/*
    </sonar.coverage.exclusions>

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

    <org.eclipse.osgi>3.11.0.v20160603-1336</org.eclipse.osgi>
    <org.eclipse.osgi-maven>${org.eclipse.osgi}</org.eclipse.osgi-maven>
    <org.eclipse.osgi-range>[3.11.0,3.11.1)</org.eclipse.osgi-range>

    <org.eclipse.equinox.common>3.8.0.v20160509-1230</org.eclipse.equinox.common>
    <org.eclipse.equinox.common-maven>${org.eclipse.equinox.common}</org.eclipse.equinox.common-maven>
    <org.eclipse.equinox.common-range>[3.8.0,3.8.1)</org.eclipse.equinox.common-range>

    <org.eclipse.equinox.registry>3.6.100.v20160223-2218</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.100,3.6.101)</org.eclipse.equinox.registry-range>

    <org.eclipse.equinox.preferences>3.6.0.v20160120-1756</org.eclipse.equinox.preferences>
    <org.eclipse.equinox.preferences-maven>${org.eclipse.equinox.preferences}</org.eclipse.equinox.preferences-maven>
    <org.eclipse.equinox.preferences-range>[3.6.0,3.6.1)</org.eclipse.equinox.preferences-range>

    <org.eclipse.equinox.security>1.2.200.v20150715-1528</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.200,1.2.201)</org.eclipse.equinox.security-range>

    <org.eclipse.compare>3.6.0.v20160418-1534</org.eclipse.compare>
    <org.eclipse.compare-maven>${org.eclipse.compare}</org.eclipse.compare-maven>
    <org.eclipse.compare-range>[3.6.0,3.6.1)</org.eclipse.compare-range>

    <org.eclipse.core.resources>3.11.0.v20160503-1608</org.eclipse.core.resources>
    <org.eclipse.core.resources-maven>${org.eclipse.core.resources}</org.eclipse.core.resources-maven>
    <org.eclipse.core.resources-range>[3.11.0,3.11.1)</org.eclipse.core.resources-range>

    <org.eclipse.core.commands>3.8.0.v20160316-1921</org.eclipse.core.commands>
    <org.eclipse.core.commands-maven>${org.eclipse.core.commands}</org.eclipse.core.commands-maven>
    <org.eclipse.core.commands-range>[3.8.0,3.8.1)</org.eclipse.core.commands-range>

    <org.eclipse.core.contenttype>3.5.100.v20160418-1621</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.100,3.5.101)</org.eclipse.core.contenttype-range>

    <org.eclipse.core.expressions>3.5.100.v20160418-1621</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.100,3.5.101)</org.eclipse.core.expressions-range>

    <org.eclipse.core.filesystem>1.6.0.v20160503-1608</org.eclipse.core.filesystem>
    <org.eclipse.core.filesystem-maven>${org.eclipse.core.filesystem}</org.eclipse.core.filesystem-maven>
    <org.eclipse.core.filesystem-range>[1.6.0,1.6.1)</org.eclipse.core.filesystem-range>

    <org.eclipse.core.variables>3.3.0.v20160419-1720</org.eclipse.core.variables>
    <org.eclipse.core.variables-maven>${org.eclipse.core.variables}</org.eclipse.core.variables-maven>
    <org.eclipse.core.variables-range>[3.3.0,3.3.1)</org.eclipse.core.variables-range>

    <org.eclipse.core.runtime>3.12.0.v20160606-1342</org.eclipse.core.runtime>
    <org.eclipse.core.runtime-maven>${org.eclipse.core.runtime}</org.eclipse.core.runtime-maven>
    <org.eclipse.core.runtime-range>[3.12.0,3.12.1)</org.eclipse.core.runtime-range>

    <org.eclipse.core.jobs>3.8.0.v20160509-0411</org.eclipse.core.jobs>
    <org.eclipse.core.jobs-maven>${org.eclipse.core.jobs}</org.eclipse.core.jobs-maven>
    <org.eclipse.core.jobs-range>[3.8.0,3.8.1)</org.eclipse.core.jobs-range>

    <org.eclipse.debug.core>3.10.100.v20160419-1720</org.eclipse.debug.core>
    <org.eclipse.debug.core-maven>${org.eclipse.debug.core}</org.eclipse.debug.core-maven>
    <org.eclipse.debug.core-range>[3.10.100,3.10.101)</org.eclipse.debug.core-range>

    <org.eclipse.debug.ui>3.11.200.v20160518-1858</org.eclipse.debug.ui>
    <org.eclipse.debug.ui-maven>${org.eclipse.debug.ui}</org.eclipse.debug.ui-maven>
    <org.eclipse.debug.ui-range>[3.11.200,3.11.201)</org.eclipse.debug.ui-range>

    <org.eclipse.text>3.6.0.v20160503-1849</org.eclipse.text>
    <org.eclipse.text-maven>${org.eclipse.text}</org.eclipse.text-maven>
    <org.eclipse.text-range>[3.6.0,3.6.1)</org.eclipse.text-range>

    <org.eclipse.search>3.11.0.v20160519-1501</org.eclipse.search>
    <org.eclipse.search-maven>${org.eclipse.search}</org.eclipse.search-maven>
    <org.eclipse.search-range>[3.11.0,3.11.1)</org.eclipse.search-range>

    <org.eclipse.ltk.core.refactoring>3.7.0.v20160419-0705</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.7.0,3.7.1)</org.eclipse.ltk.core.refactoring-range>

    <org.eclipse.ltk.ui.refactoring>3.8.0.v20160518-1817</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.8.0,3.8.1)</org.eclipse.ltk.ui.refactoring-range>

    <org.eclipse.jdt.core>3.12.0.v20160516-2131</org.eclipse.jdt.core>
    <org.eclipse.jdt.core-maven>${org.eclipse.jdt.core}</org.eclipse.jdt.core-maven>
    <org.eclipse.jdt.core-range>[3.12.0,3.12.1)</org.eclipse.jdt.core-range>

    <org.eclipse.jdt.core.manipulation>1.7.0.v20160419-0705</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.7.0,1.7.1)</org.eclipse.jdt.core.manipulation-range>

    <org.eclipse.jdt.ui>3.12.0.v20160525-1829</org.eclipse.jdt.ui>
    <org.eclipse.jdt.ui-maven>${org.eclipse.jdt.ui}</org.eclipse.jdt.ui-maven>
    <org.eclipse.jdt.ui-range>[3.12.0,3.12.1)</org.eclipse.jdt.ui-range>

    <org.eclipse.jdt.debug.ui>3.7.200.v20160423-1519</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.200,3.7.201)</org.eclipse.jdt.debug.ui-range>

    <org.eclipse.jdt.junit>3.9.0.v20160421-1701</org.eclipse.jdt.junit>
    <org.eclipse.jdt.junit-maven>${org.eclipse.jdt.junit}</org.eclipse.jdt.junit-maven>
    <org.eclipse.jdt.junit-range>[3.9.0,3.9.1)</org.eclipse.jdt.junit-range>

    <org.eclipse.ui.workbench>3.108.0.v20160602-1232</org.eclipse.ui.workbench>
    <org.eclipse.ui.workbench-maven>${org.eclipse.ui.workbench}</org.eclipse.ui.workbench-maven>
    <org.eclipse.ui.workbench-range>[3.108.0,3.108.1)</org.eclipse.ui.workbench-range>

    <org.eclipse.ui.workbench.texteditor>3.10.0.v20160530-2011</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.10.0,3.10.1)</org.eclipse.ui.workbench.texteditor-range>

    <org.eclipse.jface>3.12.0.v20160518-1929</org.eclipse.jface>
    <org.eclipse.jface-maven>${org.eclipse.jface}</org.eclipse.jface-maven>
    <org.eclipse.jface-range>[3.12.0,3.12.1)</org.eclipse.jface-range>

    <org.eclipse.jface.text>3.11.0.v20160505-1301</org.eclipse.jface.text>
    <org.eclipse.jface.text-maven>${org.eclipse.jface.text}</org.eclipse.jface.text-maven>
    <org.eclipse.jface.text-range>[3.11.0,3.11.1)</org.eclipse.jface.text-range>

    <org.eclipse.swt.win32.win32.x86>3.105.0.v20160603-0902</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.105.0,3.105.1)</org.eclipse.swt.win32.win32.x86-range>

    <org.eclipse.ui.ide>3.12.0.v20160601-1609</org.eclipse.ui.ide>
    <org.eclipse.ui.ide-maven>${org.eclipse.ui.ide}</org.eclipse.ui.ide-maven>
    <org.eclipse.ui.ide-range>[3.12.0,3.12.1)</org.eclipse.ui.ide-range>

    <org.eclipse.ui.editors>3.10.0.v20160505-0931</org.eclipse.ui.editors>
    <org.eclipse.ui.editors-maven>${org.eclipse.ui.editors}</org.eclipse.ui.editors-maven>
    <org.eclipse.ui.editors-range>[3.10.0,3.10.1)</org.eclipse.ui.editors-range>

    <org.eclipse.ui>3.108.0.v20160518-1929</org.eclipse.ui>
    <org.eclipse.ui-maven>${org.eclipse.ui}</org.eclipse.ui-maven>
    <org.eclipse.ui-range>[3.108.0,3.108.1)</org.eclipse.ui-range>

    <org.eclipse.ui.console>3.6.200.v20160518-1858</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.200,3.6.201)</org.eclipse.ui.console-range>

    <org.eclipse.ui.views>3.8.100.v20160518-1929</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.100,3.8.101)</org.eclipse.ui.views-range>

    <org.eclipse.ui.forms>3.7.0.v20160518-1929</org.eclipse.ui.forms>
    <org.eclipse.ui.forms-maven>${org.eclipse.ui.forms}</org.eclipse.ui.forms-maven>
    <org.eclipse.ui.forms-range>[3.7.0,3.7.1)</org.eclipse.ui.forms-range>

    <org.eclipse.pde.core>3.11.0.v20160510-1223</org.eclipse.pde.core>
    <org.eclipse.pde.core-maven>${org.eclipse.pde.core}</org.eclipse.pde.core-maven>
    <org.eclipse.pde.core-range>[3.11.0,3.11.1)</org.eclipse.pde.core-range>

    <org.eclipse.pde.ui>3.9.0.v20160525-1830</org.eclipse.pde.ui>
    <org.eclipse.pde.ui-maven>${org.eclipse.pde.ui}</org.eclipse.pde.ui-maven>
    <org.eclipse.pde.ui-range>[3.9.0,3.9.1)</org.eclipse.pde.ui-range>

    <org.eclipse.jdt.launching>3.8.100.v20160505-0636</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.100,3.8.101)</org.eclipse.jdt.launching-range>

    <org.eclipse.m2e.core>1.7.0.20160603-1933</org.eclipse.m2e.core>
    <org.eclipse.m2e.core-maven>${org.eclipse.m2e.core}</org.eclipse.m2e.core-maven>
    <org.eclipse.m2e.core-range>[1.7.0,1.7.1)</org.eclipse.m2e.core-range>

    <org.eclipse.m2e.core.ui>1.7.0.20160603-1933</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.7.0,1.7.1)</org.eclipse.m2e.core.ui-range>

    <org.eclipse.m2e.archetype.common>1.7.0.20160603-1931</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.7.0,1.7.1)</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>8.0.0.004_Photon_RC1</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.test</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.s</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk</groupId>
        <artifactId>org.eclipse.scout.sdk.core.s.test</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
        <classifier>sources</classifier>
      </dependency>

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

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

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

      <dependency>
        <groupId>org.eclipse.scout.sdk.s2e</groupId>
        <artifactId>org.eclipse.scout.sdk.s2e.test</artifactId>
        <version>8.0.0.004_Photon_RC1</version>
      </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.compare</artifactId>
        <version>${org.eclipse.compare-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.variables</artifactId>
        <version>${org.eclipse.core.variables-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.debug.core</artifactId>
        <version>${org.eclipse.debug.core-maven}</version>
      </dependency>

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

      <dependency>
        <groupId>org.eclipse.scout.sdk.deps</groupId>
        <artifactId>org.eclipse.jdt.junit</artifactId>
        <version>${org.eclipse.jdt.junit-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.4</version>
      </dependency>

      <dependency>
        <groupId>org.apache.maven.archetype</groupId>
        <artifactId>archetype-common</artifactId>
        <version>2.4</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.9</version>
      </dependency>

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

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jul-to-slf4j</artifactId>
        <version>1.7.25</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>io.takari.aether</groupId>
        <artifactId>aether-connector-okhttp</artifactId>
        <version>0.16.0</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>

      <dependency>
        <groupId>wsdl4j</groupId>
        <artifactId>wsdl4j</artifactId>
        <version>1.6.2</version>
      </dependency>

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

      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>18.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>8.0.0.004_Photon_RC1</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>
        <enabled>false</enabled>
      </snapshots>
      <id>eclipse.release</id>
      <name>eclipse-release-repo</name>
      <url>https://repo.eclipse.org/content/groups/releases/</url>
    </repository>
    <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>
        <enabled>false</enabled>
      </snapshots>
      <id>eclipse.release</id>
      <name>eclipse-release-repo</name>
      <url>https://repo.eclipse.org/content/groups/releases/</url>
    </pluginRepository>
    <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>
