<?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
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
  xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.eclipse</groupId>
    <artifactId>eclipse-platform-parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.jdt.ui</groupId>
  <artifactId>eclipse.jdt.ui</artifactId>
  <version>3.8.0-SNAPSHOT</version>
  <packaging>pom</packaging>

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

  <modules>
    <module>org.eclipse.ltk.core.refactoring</module>
    <module>org.eclipse.ltk.ui.refactoring</module>
    <module>org.eclipse.jdt.text.tests</module>
    <module>org.eclipse.jdt.ui.tests</module>
    <module>org.eclipse.ltk.core.refactoring.tests</module>
    <module>org.eclipse.ltk.ui.refactoring.tests</module>
    <module>org.eclipse.jdt.ui.tests.refactoring</module>
    <module>org.eclipse.jdt.core.manipulation</module>
    <module>org.eclipse.jdt.ui</module>
    <module>org.eclipse.jdt.ui.examples.projects</module>
    <module>org.eclipse.jdt.junit</module>
    <module>org.eclipse.jdt.junit.core</module>
    <module>org.eclipse.jdt.junit.runtime</module>
    <module>org.eclipse.jdt.junit4.runtime</module>
  </modules>
</project>
