<project>
  <parent>
    <groupId>org.apache.felix</groupId>
    <artifactId>felix</artifactId>
    <version>1.1.0-SNAPSHOT</version>
    <relativePath>../pom/pom.xml</relativePath>
  </parent>

  <modelVersion>4.0.0</modelVersion>
  <artifactId>ipojo</artifactId>
  <name>Apache Felix iPOJO</name>
  <version>0.7.5-SNAPSHOT</version>
  <packaging>pom</packaging>
  <modules>
	<module>../ipojo/metadata</module>
    <module>../ipojo/manipulator</module>
	<module>../ipojo/plugin</module>
    <module>../ipojo/core</module>
    <module>../ipojo/arch</module>
	<module>../ipojo/ant</module>
  </modules>
</project>