BUG-7813: remove spring from base distribution
[odlparent.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index aaf34a1b9381c18643d094542d80a9a2c78f5f54..c70bb16ccf38097ec82f8e35f8bff481a370c317 100644 (file)
--- a/pom.xml
+++ b/pom.xml
 <?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
+<!-- vi: set et smarttab sw=4 tabstop=4: --><!--
+ Copyright (c) 2014, 2015 Cisco Systems, Inc. and others.  All rights reserved.
 
  This program and the accompanying materials are made available under the
  terms of the Eclipse Public License v1.0 which accompanies this distribution,
  and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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/xsd/maven-4.0.0.xsd">
-
+--><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/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
-    <artifactId>odl-root-parent</artifactId>
-    <groupId>org.opendaylight.odl</groupId>
-    <version>1.4.2-SNAPSHOT</version>
-    <packaging>pom</packaging>
-    <prerequisites>
-        <maven>3.0.4</maven>
-    </prerequisites>
-
-    <properties>
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
-        <nexus.repository.release>opendaylight.release</nexus.repository.release>
-        <nexus.repository.snapshot>opendaylight.snapshot</nexus.repository.snapshot>
-        <onefw.nexusproxy>http://maven.cisco.com:8081/nexus/content</onefw.nexusproxy>
-        <nexus.repository.snapshot>opendaylight.snapshot</nexus.repository.snapshot>
-        <osgi.core.version>5.0.0</osgi.core.version>
-        <!-- Java Versions -->
-        <maven.compiler.source>1.7</maven.compiler.source>
-        <maven.compiler.target>1.7</maven.compiler.target>
 
-        <!-- Build Plugin Versions -->
-        <maven.bundle.version>2.4.0</maven.bundle.version>
-        <maven.jar.version>2.3.2</maven.jar.version>
-        <maven.javadoc.version>2.9.1</maven.javadoc.version>
-        <maven.release.version>2.4.2</maven.release.version>
-        <maven.source.version>2.2.1</maven.source.version>
-        <maven.surefire.version>2.16</maven.surefire.version>
-        <maven.clean.plugin.version>2.5</maven.clean.plugin.version>
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>odlparent-lite</artifactId>
+        <version>1.8.0-SNAPSHOT</version>
+        <relativePath>odlparent-lite</relativePath>
+    </parent>
 
-        <!-- Supporting Libraries -->
-        <commons.lang3.version>3.1</commons.lang3.version>
-        <commons.lang.version>2.6</commons.lang.version>
-        <commons.codec.version>1.8</commons.codec.version>
-        <slf4j.version>1.7.2</slf4j.version>
-        <guava.version>14.0.1</guava.version>
-        <xtend.version>2.4.3</xtend.version>
-        <groovy.version>2.1.6</groovy.version>
-        <mockito.version>1.9.5</mockito.version>
-        <javassist.version>3.17.1-GA</javassist.version>
-        <logback.version>1.0.9</logback.version>
-        <jersey.client.version>1.17</jersey.client.version>
-        <jersey.server.version>1.17</jersey.server.version>
-        <jersey.version>1.17</jersey.version>
-        <jersey-servlet.version>1.17</jersey-servlet.version>
-        <junit.version>4.11</junit.version>
-    </properties>
+    <artifactId>odlparent-aggregator</artifactId>
+    <name>odlparent</name> <!-- Used by Sonar to set project name -->
+    <packaging>pom</packaging>
 
     <scm>
-        <connection>scm:git:ssh://sbejgam@codehub-one-fw-review.cisco.com:29418/onfw-odl-root-parent.git</connection>
-        <developerConnection>scm:git:ssh://sbejgam@codehub-one-fw-review.cisco.com:29418/onfw-odl-root-parent.git</developerConnection>
-        <url>https://wiki.opendaylight.org/view/YANG_Tools:Main</url>
+        <connection>scm:git:ssh://git.opendaylight.org:29418/odlparent.git</connection>
+        <developerConnection>scm:git:ssh://git.opendaylight.org:29418/odlparent.git</developerConnection>
         <tag>HEAD</tag>
+        <url>https://wiki.opendaylight.org/view/ODL_Root_Parent:Main</url>
     </scm>
 
-
-    <pluginRepositories>
-        <!-- OpenDayLight Repo Mirror -->
-        <pluginRepository>
-            <id>opendaylight-mirror</id>
-            <name>opendaylight-mirror</name>
-            <url>${nexusproxy}/groups/public/</url>
-            <snapshots>
-                <enabled>false</enabled>
-            </snapshots>
-            <releases>
-                <enabled>true</enabled>
-                <updatePolicy>never</updatePolicy>
-            </releases>
-        </pluginRepository>
-
-        <!-- OpenDayLight Snapshot artifact -->
-        <pluginRepository>
-            <id>opendaylight-snapshot</id>
-            <name>opendaylight-snapshot</name>
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-            <snapshots>
-                <enabled>true</enabled>
-            </snapshots>
-            <releases>
-                <enabled>false</enabled>
-            </releases>
-        </pluginRepository>
-    </pluginRepositories>
-
-    <repositories>
-        <!-- OpenDayLight Repo Mirror -->
-        <repository>
-            <id>opendaylight-mirror</id>
-            <name>opendaylight-mirror</name>
-            <url>${nexusproxy}/groups/public/</url>
-            <snapshots>
-                <enabled>false</enabled>
-            </snapshots>
-            <releases>
-                <enabled>true</enabled>
-                <updatePolicy>never</updatePolicy>
-            </releases>
-        </repository>
-
-        <!-- OpenDayLight Snapshot artifact -->
-        <repository>
-            <id>opendaylight-snapshot</id>
-            <name>opendaylight-snapshot</name>
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-            <snapshots>
-                <enabled>true</enabled>
-            </snapshots>
-            <releases>
-                <enabled>false</enabled>
-            </releases>
-        </repository>
-             <!-- One-FW Released artifact -->
-      <!--<repository>-->
-        <!--<id>onep</id>-->
-        <!--<name>onefw-release</name>-->
-        <!--<url>${onefw.nexusproxy}/repositories/onep/</url>-->
-      <!--</repository>-->
-      <!--&lt;!&ndash; One-FW Snapshot artifact &ndash;&gt;-->
-      <!--<repository>-->
-        <!--<id>onep-snapshots</id>-->
-        <!--<name>onefw-snapshots</name>-->
-        <!--<url>${onefw.nexusproxy}/repositories/onep-snapshots/</url>-->
-      <!--</repository>-->
-      <!--&lt;!&ndash; One-FW thirdparty artifacts &ndash;&gt;-->
-      <!--<repository>-->
-        <!--<id>onep-thirdparty</id>-->
-        <!--<name>onefw-thirdpartys</name>-->
-        <!--<url>${onefw.nexusproxy}/repositories/onep-thirdparty/</url>-->
-      <!--</repository>-->
-      <!--&lt;!&ndash; This is required to get the grapevine services sdk&ndash;&gt;-->
-      <!--<repository>-->
-          <!--<id>grapevine-snapshots</id>-->
-          <!--<url>http://sdndev-bld-01:8081/nexus/content/repositories/grapevine-snapshots</url>-->
-          <!--<releases>-->
-              <!--<enabled>true</enabled>-->
-          <!--</releases>-->
-      <!--</repository>-->
-
-    </repositories>
-
-    <dependencyManagement>
-        <dependencies>
-            <!-- Testing Dependencies -->
-            <dependency>
-                <groupId>junit</groupId>
-                <artifactId>junit</artifactId>
-                <version>${junit.version}</version>
-                <scope>test</scope>
-            </dependency>
-            <dependency>
-                <groupId>org.mockito</groupId>
-                <artifactId>mockito-all</artifactId>
-                <version>${mockito.version}</version>
-                <scope>test</scope>
-            </dependency>
-            <dependency>
-                <groupId>org.mockito</groupId>
-                <artifactId>mockito-core</artifactId>
-                <version>${mockito.version}</version>
-                <scope>test</scope>
-            </dependency>
-            <dependency>
-                <groupId>org.slf4j</groupId>
-                <artifactId>slf4j-simple</artifactId>
-                <version>${slf4j.version}</version>
-                <scope>test</scope>
-            </dependency>
-
-            <!-- Supporting Libraries -->
-            <dependency>
-                <groupId>org.slf4j</groupId>
-                <artifactId>jcl-over-slf4j</artifactId>
-                <version>${slf4j.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.javassist</groupId>
-                <artifactId>javassist</artifactId>
-                <version>3.17.1-GA</version>
-            </dependency>
-            <dependency>
-                <groupId>org.slf4j</groupId>
-                <artifactId>slf4j-api</artifactId>
-                <version>${slf4j.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.slf4j</groupId>
-                <artifactId>slf4j-log4j12</artifactId>
-                <version>${slf4j.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.slf4j</groupId>
-                <artifactId>log4j-over-slf4j</artifactId>
-                <version>${slf4j.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>xml-apis</groupId>
-                <artifactId>xml-apis</artifactId>
-                <version>2.0.2</version>
-            </dependency>
-            <dependency>
-                <groupId>ch.qos.logback</groupId>
-                <artifactId>logback-core</artifactId>
-                <version>${logback.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>ch.qos.logback</groupId>
-                <artifactId>logback-classic</artifactId>
-                <version>${logback.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>com.google.guava</groupId>
-                <artifactId>guava</artifactId>
-                <version>${guava.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.eclipse.xtend</groupId>
-                <artifactId>org.eclipse.xtend.lib</artifactId>
-                <version>${xtend.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.apache.commons</groupId>
-                <artifactId>commons-lang3</artifactId>
-                <version>${commons.lang3.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.osgi</groupId>
-                <artifactId>org.osgi.core</artifactId>
-                <version>${osgi.core.version}</version>
-                <scope>provided</scope>
-            </dependency>
-
-            <dependency>
-                <groupId>commons-lang</groupId>
-                <artifactId>commons-lang</artifactId>
-                <version>${commons.lang.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>commons-codec</groupId>
-                <artifactId>commons-codec</artifactId>
-                <version>${commons.codec.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>com.google.code.findbugs</groupId>
-                <artifactId>jsr305</artifactId>
-                <version>2.0.3</version>
-            </dependency>
-            <!-- Jersey for JAXRS -->
-            <dependency>
-                <groupId>com.sun.jersey</groupId>
-                <artifactId>jersey-core</artifactId>
-                <version>${jersey.version}</version>
-                </dependency>
-                <dependency>
-                <groupId>com.sun.jersey</groupId>
-                <artifactId>jersey-server</artifactId>
-                <version>${jersey.version}</version>
-            </dependency>
-
-            <dependency>
-               <groupId>com.sun.jersey</groupId>
-                 <artifactId>jersey-client</artifactId>
-                 <version>${jersey.client.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.opendaylight.controller.thirdparty</groupId>
-                <artifactId>com.sun.jersey.jersey-servlet</artifactId>
-                <version>${jersey-servlet.version}</version>
-            </dependency>
-
-            <!-- Plugin integration -->
-            <dependency>
-                <groupId>org.sonatype.plexus</groupId>
-                <artifactId>plexus-build-api</artifactId>
-                <version>0.0.7</version>
-            </dependency>
-            <dependency>
-                <groupId>org.codehaus.plexus</groupId>
-                <artifactId>plexus-slf4j-logging</artifactId>
-                <version>1.1</version>
-            </dependency>
-            <dependency>
-                <groupId>commons-io</groupId>
-                <artifactId>commons-io</artifactId>
-                <version>2.4</version>
-            </dependency>
-
-
-        </dependencies>
-    </dependencyManagement>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-simple</artifactId>
-        </dependency>
-    </dependencies>
-
-    <distributionManagement>
-        <!-- OpenDayLight Released artifact -->
-       <!-- <repository>
-            <id>opendaylight-release</id>
-            <url>${nexusproxy}/repositories/opendaylight.release/</url>
-        </repository> -->
-        <!-- OpenDayLight Snapshot artifact -->
-      <!--  <snapshotRepository>
-            <id>opendaylight-snapshot</id>
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
-        </snapshotRepository>
-        <site>
-            <id>${project.artifactId}-site</id>
-            <url>./</url>
-        </site> -->
-
-       <!-- OpenDayLight Released artifact -->
-    <repository>
-      <id>onep</id>
-      <url>${onefw.nexusproxy}/repositories/onep/</url>
-    </repository>
-    <!-- OpenDayLight Snapshot artifact -->
-    <snapshotRepository>
-      <id>onep-snapshots</id>
-      <url>${onefw.nexusproxy}/repositories/onep-snapshots</url>
-    </snapshotRepository> 
-    </distributionManagement>
+    <modules>
+        <!-- odlparent tools -->
+        <module>checkstyle</module>
+        <module>findbugs</module>
+        <module>license</module>
+        <module>bundles-test</module>
+        <module>bundles4-test</module>
+        <module>features-test</module>
+        <module>features4-test</module>
+
+        <!-- Karaf integration -->
+        <module>karaf</module>
+        <module>karaf-plugin</module>
+        <module>karaf4-plugin</module>
+
+        <!-- Parent POMs -->
+        <module>bundle-parent</module>
+        <module>features-parent</module>
+        <module>single-feature3-parent</module>
+        <module>single-feature-parent</module>
+        <module>feature3-repo-parent</module>
+        <module>feature-repo-parent</module>
+        <module>odlparent</module>
+        <module>odlparent-lite</module>
+
+        <!-- Features -->
+        <module>features</module>
+        <module>features4</module>
+
+        <!-- Artifacts -->
+        <module>odlparent-artifacts</module>
+    </modules>
 
     <build>
-        <pluginManagement>
-            <plugins>
-                <plugin>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-jar-plugin</artifactId>
-                    <version>${maven.jar.version}</version>
-                    <!--<configuration>-->
-                        <!--<archive>-->
-                            <!--&lt;!&ndash; Bundle OSGi Manifest created by maven-bundle-plugin-->
-                                <!--into jar file &ndash;&gt;-->
-                            <!--<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>-->
-                        <!--</archive>-->
-                    <!--</configuration>-->
-                </plugin>
-                <plugin>
-                    <groupId>org.apache.felix</groupId>
-                    <artifactId>maven-bundle-plugin</artifactId>
-                    <version>${maven.bundle.version}</version>
-                    <extensions>true</extensions>
-                    <!--<executions>-->
-                        <!--<execution>-->
-                            <!--<id>bundle-manifest</id>-->
-                            <!--<phase>process-classes</phase>-->
-                            <!--<goals>-->
-                                <!--<goal>manifest</goal>-->
-                            <!--</goals>-->
-                        <!--</execution>-->
-                    <!--</executions>-->
-                    <configuration>
-                        <instructions>
-                            <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
-                            <!--
-                                                        <Export-Package>*</Export-Package>
-                            -->
-                        </instructions>
-                    </configuration>
-                </plugin>
-                <!--<plugin>-->
-                    <!--<groupId>org.eclipse.xtend</groupId>-->
-                    <!--<artifactId>xtend-maven-plugin</artifactId>-->
-                    <!--<version>${xtend.version}</version>-->
-                    <!--<executions>-->
-                        <!--<execution>-->
-                            <!--<goals>-->
-                                <!--<goal>compile</goal>-->
-                            <!--</goals>-->
-                            <!--<configuration>-->
-                                <!--<outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>-->
-                            <!--</configuration>-->
-                        <!--</execution>-->
-                    <!--</executions>-->
-                <!--</plugin>-->
-                <!--<plugin>-->
-                    <!--<artifactId>maven-clean-plugin</artifactId>-->
-                    <!--<version>${maven.clean.plugin.version}</version>-->
-                    <!--<configuration>-->
-                        <!--<filesets>-->
-                            <!--<fileset>-->
-                                <!--<directory>${basedir}/src/main/xtend-gen</directory>-->
-                                <!--<includes>-->
-                                    <!--<include>**</include>-->
-                                <!--</includes>-->
-                            <!--</fileset>-->
-                        <!--</filesets>-->
-                    <!--</configuration>-->
-                <!--</plugin>-->
-                <plugin>
-                    <groupId>org.eclipse.m2e</groupId>
-                    <artifactId>lifecycle-mapping</artifactId>
-                    <version>1.0.0</version>
-                    <configuration>
-                        <lifecycleMappingMetadata>
-                            <pluginExecutions>
-                                <pluginExecution>
-                                    <pluginExecutionFilter>
-                                        <groupId>org.apache.felix</groupId>
-                                        <artifactId>maven-bundle-plugin</artifactId>
-                                        <versionRange>[1.0,)</versionRange>
-                                        <goals>
-                                            <goal>manifest</goal>
-                                        </goals>
-                                    </pluginExecutionFilter>
-                                    <action>
-                                        <execute />
-                                    </action>
-                                </pluginExecution>
-                            </pluginExecutions>
-                        </lifecycleMappingMetadata>
-                    </configuration>
-                </plugin>
-                <plugin>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-javadoc-plugin</artifactId>
-                    <version>${maven.javadoc.version}</version>
-                    <configuration>
-                        <stylesheetfile>stylesheet.css</stylesheetfile>
-                    </configuration>
-                    <executions>
-                        <execution>
-                            <id>attach-javadocs</id>
-                            <goals>
-                                <goal>jar</goal>
-                            </goals>
-                        </execution>
-                        <execution>
-                            <goals>
-                                <goal>aggregate</goal>
-                            </goals>
-                            <phase>site</phase>
-                        </execution>
-                    </executions>
-                </plugin>
-                <plugin>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-release-plugin</artifactId>
-                    <version>${maven.release.version}</version>
-
-                    <!-- Since we have a maven plugin, we need to install it -->
-                    <configuration>
-                        <preparationGoals>clean install</preparationGoals>
-                        <completionGoals>clean install</completionGoals>
-                    </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
         <plugins>
             <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-source-plugin</artifactId>
-                <version>${maven.source.version}</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>
-            </plugin>
-        </plugins>
-    </build>
-
-    <reporting>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>findbugs-maven-plugin</artifactId>
-                <version>2.5.3</version>
+                <artifactId>maven-deploy-plugin</artifactId>
                 <configuration>
-                    <effort>Max</effort>
-                    <threshold>Low</threshold>
-                    <goal>site</goal>
+                    <skip>true</skip>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>jdepend-maven-plugin</artifactId>
-                <version>2.0-beta-2</version>
-            </plugin>
         </plugins>
-    </reporting>
+    </build>
+
+    <profiles>
+        <profile>
+            <!--
+                This profile is to ensure we only build javadocs reports
+                when we plan to deploy Maven site for our project.
+            -->
+            <id>maven-site</id>
+            <activation>
+                <file>
+                    <exists>${user.dir}/deploy-site.xml</exists>
+                </file>
+            </activation>
+
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-javadoc-plugin</artifactId>
+                        <version>2.10.4</version>
+                        <inherited>false</inherited>
+                        <executions>
+                            <execution>
+                                <id>aggregate</id>
+                                <goals>
+                                    <goal>aggregate</goal>
+                                </goals>
+                                <phase>package</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+
+    <!--
+        Maven Site Configuration
+
+        The following configuration is necessary for maven-site-plugin to
+        correctly identify the correct deployment path for OpenDaylight Maven
+        sites.
+    -->
+    <url>${odl.site.url}/${project.groupId}/${stream}/</url>
+
+    <distributionManagement>
+        <site>
+            <id>opendaylight-site</id>
+            <url>${nexus.site.url}/</url>
+        </site>
+    </distributionManagement>
 </project>