<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.sonarsource.java</groupId>
    <artifactId>java</artifactId>
    <version>5.5.0.14655</version>
  </parent>

  <artifactId>java-frontend</artifactId>

  <name>SonarQube Java :: Front-end</name>

  <dependencies>
    <dependency>
      <groupId>org.sonarsource.sonarqube</groupId>
      <artifactId>sonar-plugin-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.sonarsource.sslr</groupId>
      <artifactId>sslr-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.sonarsource.sslr-squid-bridge</groupId>
      <artifactId>sslr-squid-bridge</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>java-maven-model</artifactId>
      <version>${project.version}</version>
    </dependency>

    <dependency>
      <groupId>org.ow2.asm</groupId>
      <artifactId>asm-commons</artifactId>
    </dependency>
    <dependency>
      <groupId>org.ow2.asm</groupId>
      <artifactId>asm-tree</artifactId>
    </dependency>
    <dependency>
      <groupId>org.ow2.asm</groupId>
      <artifactId>asm-analysis</artifactId>
    </dependency>
    <dependency>
      <groupId>org.ow2.asm</groupId>
      <artifactId>asm-util</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
    </dependency>

    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-project</artifactId>
    </dependency>

    <dependency>
      <groupId>org.sonarsource.sslr</groupId>
      <artifactId>sslr-testing-harness</artifactId>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.assertj</groupId>
      <artifactId>assertj-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
    </dependency>

    <!-- JAXB is used to parse pom.xml files in PomParser -->
    <dependency>
      <groupId>javax.xml.bind</groupId>
      <artifactId>jaxb-api</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.glassfish.jaxb</groupId>
      <artifactId>jaxb-runtime</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- JAXB runtime requires javax.activation.DataSource from JAF -->
    <dependency>
      <groupId>com.sun.activation</groupId>
      <artifactId>javax.activation</artifactId>
      <scope>runtime</scope>
    </dependency>

    <dependency>
      <groupId>org.sonarsource.ucfg</groupId>
      <artifactId>sonar-ucfg</artifactId>
      <version>1.1.0.55</version>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <configuration>
          <includes>
            <include>org.sonar.java.*</include>
            <include>org.sonar.maven.*</include>
            <include>org.sonar.plugins.java.*</include>
          </includes>
          <excludes>
            <!-- sources generated by java-maven-model -->
            <exclude>org.sonar.maven.model.*</exclude>
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>unpack-test-projects</id>
            <phase>generate-test-resources</phase>
            <goals>
              <goal>unpack</goal>
            </goals>
            <configuration>
              <artifactItems>
                <!-- commons-collections -->
                <artifactItem>
                  <groupId>commons-collections</groupId>
                  <artifactId>commons-collections</artifactId>
                  <version>3.2.1</version>
                  <classifier>sources</classifier>
                  <outputDirectory>${project.build.directory}/test-projects/commons-collections-3.2.1/src</outputDirectory>
                </artifactItem>
                <artifactItem>
                  <groupId>commons-collections</groupId>
                  <artifactId>commons-collections</artifactId>
                  <version>3.2.1</version>
                  <outputDirectory>${project.build.directory}/test-projects/commons-collections-3.2.1/bin</outputDirectory>
                </artifactItem>
                <!-- struts-core -->
                <artifactItem>
                  <groupId>org.apache.struts</groupId>
                  <artifactId>struts-core</artifactId>
                  <version>1.3.9</version>
                  <classifier>sources</classifier>
                  <outputDirectory>${project.build.directory}/test-projects/struts-core-1.3.9/src</outputDirectory>
                </artifactItem>
                <artifactItem>
                  <groupId>org.apache.struts</groupId>
                  <artifactId>struts-core</artifactId>
                  <version>1.3.9</version>
                  <outputDirectory>${project.build.directory}/test-projects/struts-core-1.3.9/bin</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
          <execution>
            <id>copy</id>
            <phase>test-compile</phase>
            <goals>
              <goal>copy</goal>
            </goals>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>org.hibernate.javax.persistence</groupId>
                  <artifactId>hibernate-jpa-2.0-api</artifactId>
                  <version>1.0.1.Final</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>com.google.code.findbugs</groupId>
                  <artifactId>jsr305</artifactId>
                  <version>1.3.9</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>com.google.code.findbugs</groupId>
                  <artifactId>annotations</artifactId>
                  <version>3.0.0</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>org.jetbrains</groupId>
                  <artifactId>annotations</artifactId>
                  <version>13.0</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>org.projectlombok</groupId>
                  <artifactId>lombok</artifactId>
                  <version>1.16.4</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>org.eclipse.jdt</groupId>
                  <artifactId>org.eclipse.jdt.annotation</artifactId>
                  <version>2.1.100</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-core</artifactId>
                  <version>5.0.7.RELEASE</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>javax</groupId>
                  <artifactId>javaee-api</artifactId>
                  <version>7.0</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>org.apache.commons</groupId>
                  <artifactId>commons-lang3</artifactId>
                  <version>3.5</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>commons-lang</groupId>
                  <artifactId>commons-lang</artifactId>
                  <version>2.6</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>com.google.guava</groupId>
                  <artifactId>guava</artifactId>
                  <version>20.0</version>
                  <type>jar</type>
                </artifactItem>
                <artifactItem>
                  <groupId>commons-collections</groupId>
                  <artifactId>commons-collections</artifactId>
                  <version>3.2.1</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.apache.commons</groupId>
                  <artifactId>commons-collections4</artifactId>
                  <version>4.1</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.apache.logging.log4j</groupId>
                  <artifactId>log4j-core</artifactId>
                  <version>2.3</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-core</artifactId>
                  <version>4.3.8.RELEASE</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-jdbc</artifactId>
                  <version>5.0.7.RELEASE</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.junit.jupiter</groupId>
                  <artifactId>junit-jupiter-api</artifactId>
                  <version>5.0.0-M4</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.aspectj</groupId>
                  <artifactId>aspectjtools</artifactId>
                  <version>1.8.10</version>
                </artifactItem>
                <artifactItem>
                  <groupId>javax</groupId>
                  <artifactId>javaee-api</artifactId>
                  <version>7.0</version>
                </artifactItem>
                <artifactItem>
                  <groupId>javax.servlet</groupId>
                  <artifactId>javax.servlet-api</artifactId>
                  <version>3.1.0</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-web</artifactId>
                  <version>5.0.4.RELEASE</version>
                </artifactItem>
                <artifactItem>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-context</artifactId>
                  <version>5.0.4.RELEASE</version>
                </artifactItem>
              </artifactItems>
              <outputDirectory>${project.build.directory}/test-jars</outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

</project>
