<?xml version="1.0" encoding="UTF-8"?>
<!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->
<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>

    <packaging>pom</packaging>

    <groupId>org.apache.myfaces.extensions.cdi.jee-modules</groupId>
    <artifactId>jee-modules-project</artifactId>

    <name>MyFaces Extensions-CDI Java-EE-Modules</name>
    <version>1.0.0-SNAPSHOT</version>

    <parent>
        <groupId>org.apache.myfaces.extensions.cdi</groupId>
        <artifactId>myfaces-extcdi-parent</artifactId>
        <version>1.0.0-SNAPSHOT</version>
    </parent>

    <scm>
        <connection>scm:svn:http://svn.apache.org/repos/asf/myfaces/extensions/cdi/branches/1_0_0_rc/ee-modules</connection>
        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/myfaces/extensions/cdi/branches/1_0_0_rc/ee-modules</developerConnection>
        <url>http://svn.apache.org/viewvc/myfaces/extensions/cdi/branches/1_0_0_rc/ee-modules</url>
    </scm>

    <modules>
        <module>jsf-module</module>
        <module>jsf20-module</module>
    </modules>

    <repositories>
        <repository>
            <id>repo1.maven.org</id>
            <name>Maven repository (for cdi-api)</name>
            <url>http://repo1.maven.org/maven2</url>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jcdi_1.0_spec</artifactId>
            <version>1.0-beta</version>
        </dependency>
    </dependencies>

</project>
