<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2013 Eclipse Foundation and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Distribution License v1.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/org/documents/edl-v10.php
 
  Contributors:
     Igor Fedorenko - initial 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</groupId>
    <artifactId>eclipse-platform-parent</artifactId>
    <version>4.3.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.jdt.core</groupId>
  <artifactId>eclipse.jdt.core</artifactId>
  <version>4.3.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <properties>
    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/jdt/eclipse.jdt.core.git</tycho.scmUrl>
  </properties>

  <repositories>
    <repository>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <id>eclipse-hosted</id>
      <url>https://repo.eclipse.org/content/repositories/eclipse/</url>
    </repository>
  </repositories>

  <modules>
    <module>org.eclipse.jdt.annotation</module>
    <module>org.eclipse.jdt.compiler.tool</module>
    <module>org.eclipse.jdt.core</module>
    <module>org.eclipse.jdt.compiler.tool.tests</module>
    <module>org.eclipse.jdt.core.tests.builder</module>
    <module>org.eclipse.jdt.core.tests.compiler</module>
    <module>org.eclipse.jdt.core.tests.model</module>
    <module>org.eclipse.jdt.core.tests.performance</module>
    <module>org.eclipse.jdt.apt.core</module>
    <module>org.eclipse.jdt.apt.pluggable.core</module>
    <module>org.eclipse.jdt.apt.ui</module>
    <module>org.eclipse.jdt.compiler.apt</module>
    <module>org.eclipse.jdt.apt.pluggable.tests</module>
    <module>org.eclipse.jdt.apt.tests</module>
    <module>org.eclipse.jdt.compiler.apt.tests</module>
  </modules>

  <build>
    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>target-platform-configuration</artifactId>
        <configuration>
          <filters>
            <filter>
              <type>osgi-bundle</type>
              <id>org.eclipse.jdt.core.compiler.batch</id>
              <removeAll/>
            </filter>
          </filters>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
