<?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">

  <!--

      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.
  -->

  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache.servicemix</groupId>
    <artifactId>servicemix-pom</artifactId>
    <version>2</version>
  </parent>

  <groupId>org.apache.servicemix.features</groupId>
  <artifactId>features</artifactId>
  <packaging>pom</packaging>
  <version>4.0.0</version>
  <name>Apache ServiceMix Features</name>
  <inceptionYear>2005</inceptionYear>

  <modules>
    <module>branding</module>
    <module>activemq</module>
    <module>camel</module>
    <module>war</module>
    <module>cxf</module>
    <module>examples</module>
    <module>assembly</module>
  </modules>

  <scm>
      <connection>scm:svn:http://svn.apache.org/repos/asf/servicemix/smx4/features/tags/features-4.0.0</connection>
      <developerConnection>scm:svn:https://svn.apache.org/repos/asf/servicemix/smx4/features/tags/features-4.0.0</developerConnection>
      <url>http://svn.apache.org/viewvc/servicemix/smx4/features/tags/features-4.0.0</url>
  </scm>
  <issueManagement>
      <system>jira</system>
      <url>http://issues.apache.org/activemq/browse/SMX4</url>
  </issueManagement>

  <prerequisites>
      <maven>2.0.7</maven>
  </prerequisites>

  <properties>
      <maven.assembly.version>2.2-beta-2</maven.assembly.version>
      <xfire.maven.plugin>4.1</xfire.maven.plugin>
      <abdera.version>0.4.0-incubating_1</abdera.version>
      <activemq.version>5.2.0</activemq.version>
      <acegi.version>1.0.0</acegi.version>
      <ant.version>1.7.0_1</ant.version>
      <antlr.version>3.0.1_1</antlr.version>
      <antlr-runtime.version>3.0.1_1</antlr-runtime.version>
      <aopalliance.version>1.0_1</aopalliance.version>
      <asm.version>2.2.3_1</asm.version>
      <bnd.version>0.0.227</bnd.version>
      <cglib.version>2.1_3_2</cglib.version>
      <camel.version>1.6.0</camel.version>
      <commons-beanutils.version>1.7.0_1</commons-beanutils.version>
      <commons-collections.version>3.2.1</commons-collections.version>
      <commons-csv.version>1.0-r706899_1</commons-csv.version>
      <commons-dbcp.version>1.2.2_3</commons-dbcp.version>
      <commons.httpclient.version>3.1_1</commons.httpclient.version>
      <commons-io.version>1.3.2_1</commons-io.version>
      <commons-codec.version>1.2_1</commons-codec.version>
      <commons-jxpath.version>1.2_1</commons-jxpath.version>
      <commons.logging.version>1.1.1</commons.logging.version>
      <commons.net.version>1.4.1_1</commons.net.version>
      <commons.pool.version>1.4</commons.pool.version>
      <cxf.version>2.1.4</cxf.version>
      <dom4j.version>1.6_1</dom4j.version>
      <drools.version>4.0.7_1</drools.version>
      <depends.maven.plugin.version>1.1</depends.maven.plugin.version>
      <fastinfoset.version>1.2.2_1</fastinfoset.version>
      <features.maven.plugin.version>1.1</features.maven.plugin.version>
      <felix.bundlerepository.version>1.2.0</felix.bundlerepository.version>
      <felix.compendium.version>1.2.0</felix.compendium.version>
      <felix.configadmin.version>1.0.4</felix.configadmin.version>
      <felix.core.version>1.2.0</felix.core.version>
      <felix.osgi.version>1.2.0</felix.osgi.version>
      <felix.plugin.version>1.4.1</felix.plugin.version>
      <felix.prefs.version>1.0.2</felix.prefs.version>
      <flatpack.version>3.1.1_1</flatpack.version>
      <geronimo.annotation.version>1.1.1</geronimo.annotation.version>
      <geronimo.ejb3.version>1.0.1</geronimo.ejb3.version>
      <geronimo.el.version>1.0.1</geronimo.el.version>
      <geronimo.interceptor.version>1.0.1</geronimo.interceptor.version>
      <geronimo.jacc.version>1.0.1</geronimo.jacc.version>
      <geronimo.jaxrpc.version>2.0.0</geronimo.jaxrpc.version>
      <geronimo.j2ee.connector.version>2.0.0</geronimo.j2ee.connector.version>
      <geronimo.j2ee.management.version>1.0.1</geronimo.j2ee.management.version>
      <geronimo.jms.version>1.1.1</geronimo.jms.version>
      <geronimo.jta.version>1.1.1</geronimo.jta.version>
      <geronimo.jpa.version>1.1.1</geronimo.jpa.version>
      <geronimo.saaj.version>1.0.0</geronimo.saaj.version>
      <geronimo.servlet.version>1.1.2</geronimo.servlet.version>
      <geronimo.stax.version>1.0.1</geronimo.stax.version>
      <geronimo.wsmetadata.version>1.1.2</geronimo.wsmetadata.version>
      <geronimo.transaction.version>2.2-r634076</geronimo.transaction.version>
      <geronimo.connector.version>2.2-r634076</geronimo.connector.version>
      <geronimo.javamail.provider.version>1.8-r755222_1</geronimo.javamail.provider.version>
      <groovy.version>1.5.6_1</groovy.version>
      <howl.version>1.0.1-1_1</howl.version>
      <httpcore.version>4.0-alpha6_1</httpcore.version>
      <hamcrest.version>1.2-dev1_1</hamcrest.version>
      <ibatis.version>2.3.4.726_1</ibatis.version>
      <irclib.version>1.10_1</irclib.version>
      <isorelax.version>20050913_1</isorelax.version>
      <jackrabbit.version>1.5.3</jackrabbit.version>
      <jasper.version>6.0.14_1</jasper.version>
      <jaxb.api.version>2.1</jaxb.api.version>
      <jaxb.impl.version>2.1.6_1</jaxb.impl.version>
      <jaxws.api.version>2.1</jaxws.api.version>
      <jaxrs.api.version>0.8</jaxrs.api.version>
      <jcr-api.version>1.0_1</jcr-api.version>
      <jdt.core.version>3.2.3_1</jdt.core.version>
      <jdom.version>1.1_1</jdom.version>
      <jencks.version>2.1_1</jencks.version>
      <jetty.version>6.1.14</jetty.version>
      <jetty.bundle.version>6.1.14_1</jetty.bundle.version>
      <jexcelapi.version>2.4.2_1</jexcelapi.version>
      <jettison.version>1.0.1_1</jettison.version>
      <jing.version>20030619_1</jing.version>
      <jline.version>0.9.94</jline.version>
      <jruby.version>1.1.2_1</jruby.version>
      <joda-time.version>1.5.2_1</joda-time.version>
      <josql.version>1.5_1</josql.version>
      <jsch.version>0.1.31_1</jsch.version>
      <jsmpp.version>2.0_1</jsmpp.version>
      <juel.version>2.1.0_1</juel.version>
      <junit.version>4.4</junit.version>
      <junit.bundle.version>4.4_1</junit.bundle.version>
      <log4j.version>1.2.14</log4j.version>
      <mina.version>1.1.6_1</mina.version>
      <mina.original.version>1.1.6</mina.original.version>
      <neethi.version>2.0.4_1</neethi.version>
      <ognl.version>2.7.3_1</ognl.version>
      <oscache.version>2.4_1</oscache.version>
      <oscore.version>2.2.4_1</oscore.version>
      <osworkflow.version>2.7.0_1</osworkflow.version>
      <oro.version>2.0.8_1</oro.version>
      <openejb.version>3.0-beta-2</openejb.version>
      <openjpa.version>1.0.1</openjpa.version>
      <openjpa.bundle.version>1.2.0_1</openjpa.bundle.version>
      <pax.logging.version>1.1.1</pax.logging.version>
      <pax.url.version>0.3.3</pax.url.version>
      <pax.web.version>0.5.2</pax.web.version>
      <pax.web.extender.version>0.5.0</pax.web.extender.version>
      <propertyset.version>1.3_1</propertyset.version>
      <qpid.version>1.0-incubating-M2.1_1</qpid.version>
      <quartz.version>1.6.1_1</quartz.version>
      <rhino.version>1.7R1_1</rhino.version>
      <saaj.impl.version>1.3_1</saaj.impl.version>
      <saxon.version>9.1.0.1_1</saxon.version>
      <scriptengines.version>1.1</scriptengines.version>
      <servicemix3.version>3.3</servicemix3.version>
      <servicemix-utils.version>1.1.0</servicemix-utils.version>
      <servicemix.legal.version>1.0</servicemix.legal.version>
      <servicemix.kernel.version>1.1.0</servicemix.kernel.version>
      <servicemix.nmr.version>1.0.0</servicemix.nmr.version>
      <servicemix.specs.version>1.3.0</servicemix.specs.version>

      <servicemix-shared-version>2009.01</servicemix-shared-version>
      <servicemix-quartz-version>2009.01</servicemix-quartz-version>  
      <servicemix-jms-version>2009.01</servicemix-jms-version>
      <servicemix-jsr181-version>2009.01</servicemix-jsr181-version>
      <servicemix-http-version>2009.01</servicemix-http-version>
      <servicemix-mail-version>2009.01</servicemix-mail-version>
      <servicemix-osworkflow-version>2009.01</servicemix-osworkflow-version>
      <servicemix-wsn2005-version>2009.01</servicemix-wsn2005-version>
      <servicemix-bean-version>2009.01</servicemix-bean-version>
      <servicemix-eip-version>2009.01</servicemix-eip-version>
      <servicemix-script-version>2009.01</servicemix-script-version>
      <servicemix-scripting-version>2009.01</servicemix-scripting-version>
      <servicemix-validation-version>2009.01</servicemix-validation-version>
      <servicemix-ftp-version>2009.01</servicemix-ftp-version>
      <servicemix-xmpp-version>2009.01</servicemix-xmpp-version>
      <servicemix-saxon-version>2009.01</servicemix-saxon-version>
      <servicemix-truezip-version>2009.01</servicemix-truezip-version>
      <servicemix-camel-version>2009.01</servicemix-camel-version>
      <servicemix-cxf-bc-version>2009.01</servicemix-cxf-bc-version>
      <servicemix-cxf-se-version>2009.01</servicemix-cxf-se-version>
      <servicemix-drools-version>2009.01</servicemix-drools-version>
      <servicemix-file-version>2009.01</servicemix-file-version>
      <servicemix-snmp-version>2009.01</servicemix-snmp-version>
      <servicemix-smpp-version>2009.01</servicemix-smpp-version>
      <servicemix-vfs-version>2009.01</servicemix-vfs-version>
      <servicemix-jbi-plugin-version>4.1</servicemix-jbi-plugin-version>

      <smack.version>3.0.4_1</smack.version>
      <snmp4j.version>1.8.1_1</snmp4j.version>
      <spring.version>2.5.6</spring.version>
      <spring.integration.version>1.0.0.RC2</spring.integration.version>
      <spring.osgi.version>1.2.0-m2</spring.osgi.version>
      <stringtemplate.version>3.2_1</stringtemplate.version>
      <velocity.version>1.5_1</velocity.version>
      <wsdl4j.version>1.6.1_1</wsdl4j.version>
      <woodstox.version>3.2.7_1</woodstox.version>
      <xstream.version>1.2.2</xstream.version>
      <xstream.bundle.version>1.3_1</xstream.bundle.version>
      <xbean.version>3.5</xbean.version>
      <xmlbeans.version>2.4.0_2</xmlbeans.version>
      <xmlschema.version>1.4.3_1</xmlschema.version>
      <xmlsec.version>1.3.0_1</xmlsec.version>
      <xmlresolver.version>1.2_1</xmlresolver.version>
      <xpp3.version>1.1.4c_1</xpp3.version>
      <werken-xpath.version>0.9.4_1</werken-xpath.version>
      <wss4j.version>1.5.4_1</wss4j.version>
  </properties>

  <repositories>
      <!-- Default repository -->
      <repository>
          <id>central</id>
          <name>Default maven repo</name>
          <url>http://repo1.maven.org/maven2</url>
          <releases>
              <enabled>true</enabled>
          </releases>
          <snapshots>     
              <enabled>false</enabled>
          </snapshots>     
      </repository>
       <!-- ServiceMix repo -->
       <repository>
           <id>servicemix</id>
           <name>Apache ServiceMix Repository</name>
           <url>http://svn.apache.org/repos/asf/servicemix/m2-repo</url>
           <releases>
               <enabled>true</enabled>
           </releases>
           <snapshots>     
               <enabled>false</enabled>
           </snapshots>     
       </repository>
       <!-- ASF M2 snapshot repo -->
       <repository>
          <id>apache-snapshots</id>
          <name>Apache m2 Snapshots Repository</name>
          <url>http://people.apache.org/repo/m2-snapshot-repository</url>
          <releases>
              <enabled>false</enabled>
          </releases>
          <snapshots>     
              <enabled>true</enabled>
          </snapshots>     
       </repository>
       <!-- OPS4j repository -->
       <repository>
           <id>ops4j</id>
           <name>OPS4j repo</name>
           <url>http://repository.ops4j.org/maven2</url>
           <releases>
               <enabled>true</enabled>
           </releases>
           <snapshots>     
               <enabled>false</enabled>
           </snapshots>     
       </repository>
       <!-- Java.net repo -->
       <repository>
          <id>java.net</id>
          <url>http://download.java.net/maven/1/</url>
          <layout>legacy</layout>
          <releases>
              <enabled>true</enabled>
          </releases>
          <snapshots>     
              <enabled>false</enabled>
          </snapshots>     
        </repository>
       <repository>
            <id>java.net.2</id>
            <name>Java Net 2 Repository</name>
            <url>http://download.java.net/maven/2</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>     
                <enabled>false</enabled>
            </snapshots>     
        </repository>
       <!--jboss repo for drools lib--> 
       <repository>
            <id>jboss</id>
            <name>Jboss Repository</name>
            <url>http://repository.jboss.org/maven2</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>     
                <enabled>false</enabled>
            </snapshots>     
       </repository>
       <!-- Spring milestones repository -->
       <!-- TODO: remove this repo when spring-dm 1.2.0 is out -->
       <repository>
           <id>spring-milestone</id>
           <name>Spring Portfolio Milestone Repository</name>
           <url>http://s3.amazonaws.com/maven.springframework.org/milestone</url>
           <releases>
               <enabled>true</enabled>
           </releases>
           <snapshots>
               <enabled>false</enabled>
           </snapshots>
       </repository>
   </repositories>

  <pluginRepositories>
      <!-- ServiceMix repo -->
      <pluginRepository>
          <id>servicemix</id>
          <name>Apache ServiceMix Repository</name>
          <url>http://svn.apache.org/repos/asf/servicemix/m2-repo</url>
      </pluginRepository>
      <!-- Snapshot repo -->
      <pluginRepository>
          <id>snapshots</id>
          <name>Snapshots Repository</name>
          <url>http://people.apache.org/repo/m2-snapshot-repository</url>
          <releases><enabled>false</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
      </pluginRepository>
  </pluginRepositories>

  <dependencyManagement>
    <dependencies>
      <dependency>
          <groupId>org.apache.felix</groupId>
          <artifactId>org.osgi.compendium</artifactId>
          <version>${felix.compendium.version}</version>
          <exclusions>
            <exclusion>
              <groupId>org.apache.felix</groupId>
              <artifactId>org.osgi.foundation</artifactId>
            </exclusion>
            <exclusion>
              <groupId>org.apache.felix</groupId>
              <artifactId>javax.servlet</artifactId>
            </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-aop</artifactId>
          <version>${spring.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-beans</artifactId>
          <version>${spring.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-core</artifactId>
          <version>${spring.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
          <version>${spring.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-test</artifactId>
          <version>${spring.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework.osgi</groupId>
          <artifactId>spring-osgi-extender</artifactId>
          <version>${spring.osgi.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework.osgi</groupId>
          <artifactId>spring-osgi-core</artifactId>
          <version>${spring.osgi.version}</version>
      </dependency>
      <dependency>
          <groupId>org.springframework.osgi</groupId>
          <artifactId>spring-osgi-io</artifactId>
          <version>${spring.osgi.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-core</artifactId>
          <version>${mina.original.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.mina</groupId>
          <artifactId>mina-filter-ssl</artifactId>
          <version>${mina.original.version}</version>
      </dependency>
      <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>${junit.version}</version>
      </dependency>
      <dependency>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
          <version>${log4j.version}</version>
      </dependency>
      <dependency>
          <groupId>jline</groupId>
          <artifactId>jline</artifactId>
          <version>${jline.version}</version>
      </dependency>
      <dependency>
          <groupId>commons-logging</groupId>
          <artifactId>commons-logging</artifactId>
          <version>${commons.logging.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-jms_1.1_spec</artifactId>
          <version>${geronimo.jms.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-jta_1.1_spec</artifactId>
          <version>${geronimo.jta.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-servlet_1.5_spec</artifactId>
          <version>${geronimo.servlet.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-j2ee-connector_1.5_spec</artifactId>
          <version>${geronimo.j2ee.connector.version}</version>
      </dependency>
      <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-jaxws_2.1_spec</artifactId>
                <version>1.0</version>
      </dependency>
      <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
          <version>${geronimo.j2ee.management.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.activemq</groupId>
          <artifactId>activemq-core</artifactId>
          <version>${activemq.version}</version>
          <exclusions>
              <exclusion>
                  <groupId>org.apache.activemq</groupId>
                  <artifactId>activeio-core</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>org.apache.geronimo.specs</groupId>
                  <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>javax.xml</groupId>
                  <artifactId>jaxb-api</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>org.apache.cxf</groupId>
          <artifactId>cxf-bundle</artifactId>
          <version>${cxf.version}</version>
          <exclusions>
              <exclusion>
                  <groupId>bouncycastle</groupId>
                  <artifactId>bcprov-jdk14</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>net.java.dev.stax-utils</groupId>
                  <artifactId>stax-utils</artifactId>
              </exclusion>
              <exclusion>
                      <groupId>org.codehaus.jra</groupId>
                      <artifactId>jra</artifactId>
              </exclusion>
              <exclusion>
                      <groupId>xml-apis</groupId>
                      <artifactId>xml-apis</artifactId>
              </exclusion>
              <exclusion>
                      <groupId>jaxen</groupId>
                      <artifactId>jaxen</artifactId>
              </exclusion>
              <exclusion>
                      <groupId>opensaml</groupId>
                      <artifactId>opensaml</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>org.jencks</groupId>
          <artifactId>jencks</artifactId>
          <!-- do not use ${jencks.version} for this - is SMX4 OSGi bundle version -->
          <version>2.1</version>
          <exclusions>
              <exclusion>
                  <groupId>org.apache.geronimo.specs</groupId>
                  <artifactId>geronimo-jta_1.0.1B_spec</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>jencks</groupId>
                  <artifactId>xapool-without-pool</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>jetty</artifactId>
          <version>${jetty.version}</version>
          <exclusions>
              <exclusion>
                  <groupId>org.mortbay.jetty</groupId>
                  <artifactId>servlet-api-2.5</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>jetty-client</artifactId>
          <version>${jetty.version}</version>
      </dependency>
      <dependency>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>jetty-sslengine</artifactId>
          <version>${jetty.version}</version>
      </dependency>
      <dependency>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>jetty-util</artifactId>
          <version>${jetty.version}</version>
      </dependency>
      <dependency>
          <groupId>org.apache.xbean</groupId>
          <artifactId>xbean-spring</artifactId>
          <version>${xbean.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <build>
      <defaultGoal>install</defaultGoal>

      <pluginManagement>
          <plugins>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-release-plugin</artifactId>
                  <version>2.0-beta-7</version>
                  <configuration>
                      <preparationGoals>clean,verify,install</preparationGoals>
                      <autoVersionSubmodules>true</autoVersionSubmodules>
                  </configuration>
              </plugin>
              <plugin>
                  <groupId>org.apache.servicemix.tooling</groupId>
                  <artifactId>jbi-maven-plugin</artifactId>
                  <version>${servicemix-jbi-plugin-version}</version>
                  <extensions>true</extensions>
              </plugin>
              <plugin>
                  <groupId>org.apache.felix</groupId>
                  <artifactId>maven-bundle-plugin</artifactId>
                  <version>${felix.plugin.version}</version>
                  <extensions>true</extensions>
              </plugin>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-compiler-plugin</artifactId>
                  <version>2.0.2</version>
                  <configuration>
                      <source>1.5</source>
                      <target>1.5</target>
                      <maxmem>256M</maxmem>
                      <fork>${compiler.fork}</fork>
                  </configuration>
              </plugin>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-idea-plugin</artifactId>
                  <version>2.1</version>
                  <configuration>
                      <downloadSources>true</downloadSources>
                      <downloadJavadocs>true</downloadJavadocs>
                  </configuration>
              </plugin>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-surefire-plugin</artifactId>
                  <version>2.3.1</version>
              </plugin>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-surefire-plugin</artifactId>
                  <version>2.3.1</version>
              </plugin>
              <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-assembly-plugin</artifactId>
                  <version>${maven.assembly.version}</version>
              </plugin>
          </plugins>
      </pluginManagement>
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-dependency-plugin</artifactId>
              <version>2.0</version>
              <executions>
                  <execution>
                      <id>copy-legal</id>
                      <phase>generate-resources</phase>
                      <goals>
                          <goal>copy</goal>
                      </goals>
                      <configuration>
                          <artifactItems>
                              <artifactItem>
                                  <groupId>org.apache.servicemix.legal</groupId>
                                  <artifactId>legal</artifactId>
                                   <version>${servicemix.legal.version}</version>
                                  <type>xml</type>
                                  <outputDirectory>target/legal/</outputDirectory>
                              </artifactItem>
                          </artifactItems>
                          <stripVersion>true</stripVersion>
                      </configuration>
                  </execution>
	          </executions>
	      </plugin>
          <plugin>
              <artifactId>maven-remote-resources-plugin</artifactId>
              <version>1.0</version>
              <executions>
                  <execution>
                      <goals>
                          <goal>process</goal>
                      </goals>
                      <configuration>
                          <resourceBundles>
                              <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
                          </resourceBundles>
                          <supplementalModels>
                              <supplementalModel>target/legal/legal.xml</supplementalModel>
                          </supplementalModels>
                          <properties>
                              <addLicense>true</addLicense>
                              <addArtifact>true</addArtifact>
                              <projectName>Apache ServiceMix</projectName>
                          </properties>
                      </configuration>
                  </execution>
              </executions>
          </plugin>
      </plugins>
  </build>

  <reporting>
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-javadoc-plugin</artifactId>
              <version>2.3</version>
          </plugin>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-jxr-plugin</artifactId>
              <version>2.0</version>
          </plugin>
      </plugins>
  </reporting>

  <profiles>
      <profile>
          <id>fastinstall</id>
          <properties>
              <maven.test.skip>true</maven.test.skip>
          </properties>
      </profile>
      <profile>
          <id>rat</id>
          <build>
              <plugins>
                  <plugin>
                      <groupId>org.codehaus.mojo</groupId>
                      <artifactId>rat-maven-plugin</artifactId>
                      <version>1.0-alpha-3</version>
                      <executions>
                          <execution>
                              <phase>verify</phase>
                              <goals>
                                  <goal>check</goal>
                              </goals>
                          </execution>
                      </executions>
                      <configuration>
                          <reportFile>${project.build.directory}/${project.build.finalName}.rat</reportFile>
                          <excludes>
                              <exclude>**/target/**/*</exclude>
                              <!-- IDEA files -->
                              <exclude>**/*.iml</exclude>
                              <exclude>**/*.ipr</exclude>
                              <exclude>**/*.iws</exclude>
                              <!-- Eclipse files -->
                              <exclude>**/.*</exclude>
                              <exclude>**/eclipse-classes/**/*</exclude>
                          </excludes>
                      </configuration>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>release</id>
          <build>
              <plugins>
                  <!-- We want to deploy the artifact to a staging location for perusal -->
                  <plugin>
                      <inherited>true</inherited>
                      <artifactId>maven-deploy-plugin</artifactId>
                      <version>2.3</version>
                      <configuration>
                          <altDeploymentRepository>${deploy.altRepository}</altDeploymentRepository>
                          <updateReleaseInfo>true</updateReleaseInfo>
                      </configuration>
                  </plugin>
                  <!-- We want to sign the artifact, the POM, and all attached artifacts -->
                  <plugin>
                      <artifactId>maven-gpg-plugin</artifactId>
                      <version>1.0-alpha-4</version>
                      <executions>
                          <execution>
                              <goals>
                                  <goal>sign</goal>
                              </goals>
                          </execution>
                      </executions>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>setup.eclipse</id>
          <modules>
              <module>assembly</module>
          </modules>
          <properties>
              <eclipse.workspace.dir>${basedir}/../workspace</eclipse.workspace.dir>
          </properties>
          <build>
              <defaultGoal>eclipse:eclipse</defaultGoal>
              <plugins>
                  <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-eclipse-plugin</artifactId>
                      <inherited>false</inherited>
                      <executions>
                          <execution>
                              <id>setup.eclipse.workspace</id>
                              <phase>process-test-sources</phase>
                              <goals>
                                  <goal>add-maven-repo</goal>
                              </goals>
                              <configuration>
                                  <workspace>${eclipse.workspace.dir}</workspace>
                              </configuration>
                          </execution>
                      </executions>
                  </plugin>
              </plugins>
          </build>
      </profile>
      <profile>
          <id>deploy</id>
          <build>
              <defaultGoal>deploy</defaultGoal>
              <plugins>
                  <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-source-plugin</artifactId>
                      <version>2.0.4</version>
                      <executions>
                          <execution>
                              <id>attach-sources</id>
                              <goals>
                                  <goal>jar</goal>
                              </goals>
                          </execution>
                      </executions>
                  </plugin>
                  <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-javadoc-plugin</artifactId>
                      <executions>
                          <execution>
                              <id>attach-javadocs</id>
                              <goals>
                                  <goal>jar</goal>
                              </goals>
                          </execution>
                      </executions>
                  </plugin>
              </plugins>
          </build>
      </profile>
  </profiles>

</project>
