<?xml version="1.0" encoding="UTF-8"?>

<project> 
  <modelVersion>4.0.0</modelVersion>  
  <groupId>org.apache.maven.it</groupId>  
  <artifactId>it0030</artifactId>  
  <packaging>library</packaging>  
  <version>1.0.2-RC1</version>  
  <name>it0030</name>  
  <build> 
    <sourceDirectory>src/main/csharp</sourceDirectory>  
    <plugins> 
      <plugin> 
        <groupId>npanday.plugin</groupId>  
        <artifactId>maven-compile-plugin</artifactId>  
        <extensions>true</extensions> 
      </plugin>  
      <plugin> 
        <groupId>npanday.plugin</groupId>  
        <artifactId>maven-deploy-plugin</artifactId> 
      </plugin> 
    </plugins> 
  </build>  
  <dependencies> 
    <dependency> 
      <groupId>org.apache.maven.it</groupId>  
      <artifactId>it0029</artifactId>  
      <version>1.0.2-RC1</version>  
      <type>library</type> 
    </dependency>  
    <dependency> 
      <groupId>org.apache.maven.it</groupId>  
      <artifactId>it0028</artifactId>  
      <version>1.0.2-RC1</version>  
      <type>library</type> 
    </dependency> 
  </dependencies>  
  <repositories> 
    <repository> 
      <id>snapshot repo</id>  
      <name>snapshot repo</name>  
      <url>file://${basedir}/../it0028/target/remoteSnapshotRepo/snapshots</url>  
      <!-- Check for new snapshots every X minutes -->  
      <snapshots> 
        <updatePolicy>interval:1</updatePolicy> 
      </snapshots> 
    </repository>  
    <repository> 
      <id>regular repo</id>  
      <name>regular repo</name>  
      <url>file://${basedir}/../it0029/target/remoteRepo</url> 
    </repository> 
  </repositories> 
</project>
