<project>
  <modelVersion>4.0.0</modelVersion>
  <name>Maven Integration Test :: it0061</name> 
  <groupId>org.apache.maven.its.it0061</groupId>
  <artifactId>maven-it-it0061</artifactId>
  <description>Verify that deployment of artifacts to a legacy-layout repository
        results in a groupId directory of 'the.full.group.id' instead of
        'the/full/group/id'.</description>
  <packaging>jar</packaging>
  <version>1.0</version>

  <distributionManagement>
    <repository>
      <id>test</id>
      <url>file:target/test-repo</url>
      <layout>legacy</layout>
    </repository>
  </distributionManagement>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <type>jar</type>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
