Merge changes Iaac9f7e2,I9c336a30
[yangtools.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index 52c3f04cbf23a2fbb4017ecd665baeca6d096fff..e229268818624987b3e648f535a231bc302d509a 100644 (file)
--- a/pom.xml
+++ b/pom.xml
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
-\r
-    <modelVersion>4.0.0</modelVersion>\r
-    <artifactId>yangtools</artifactId>\r
-    <groupId>org.opendaylight.yangtools</groupId>\r
-    <version>0.5-SNAPSHOT</version>\r
-    <packaging>pom</packaging>\r
-\r
-    <properties>\r
-        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
-        <slf4j.version>1.7.2</slf4j.version>\r
-        <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>\r
-        <yang.version>0.5.8-SNAPSHOT</yang.version>\r
-        <maven.bundle.version>2.4.0</maven.bundle.version>\r
-    </properties>\r
-\r
-    <modules>\r
-        <module>yang</module>\r
-        <module>code-generator</module>\r
-        <module>model</module>\r
-    </modules>\r
-\r
-    <pluginRepositories>\r
-        <!-- Maven repo2 mirror -->\r
-        <!-- http://repo2.maven.org/maven2 -->\r
-        <pluginRepository>\r
-            <id>central2</id>\r
-            <name>central2</name>\r
-            <url>${nexusproxy}/repositories/central2/</url>\r
-        </pluginRepository>\r
-        <!-- Maven repo1 mirror -->\r
-        <!-- http://repo1.maven.org/maven2 -->\r
-        <pluginRepository>\r
-            <id>central</id>\r
-            <name>central</name>\r
-            <url>${nexusproxy}/repositories/central/</url>\r
-        </pluginRepository>\r
-    </pluginRepositories>\r
-\r
-\r
-    <repositories>\r
-        <!-- EBR release -->\r
-        <!-- http://repository.springsource.com/maven/bundles/release -->\r
-        <repository>\r
-            <id>ebr-bundles-release</id>\r
-            <name>ebr-bundles-release</name>\r
-            <url>${nexusproxy}/repositories/ebr-bundles-release/</url>\r
-        </repository>\r
-        <!-- EBR external -->\r
-        <!-- http://repository.springsource.com/maven/bundles/external -->\r
-        <repository>\r
-            <id>ebr-bundles-external</id>\r
-            <name>ebr-bundles-external</name>\r
-            <url>${nexusproxy}/repositories/ebr-bundles-external/</url>\r
-        </repository>\r
-        <!-- Maven repo2 mirror -->\r
-        <!-- http://repo2.maven.org/maven2 -->\r
-        <repository>\r
-            <id>central2</id>\r
-            <name>central2</name>\r
-            <url>${nexusproxy}/repositories/central2/</url>\r
-        </repository>\r
-        <!-- Maven repo1 mirror -->\r
-        <!-- http://repo1.maven.org/maven2 -->\r
-        <repository>\r
-            <id>central</id>\r
-            <name>central</name>\r
-            <url>${nexusproxy}/repositories/central/</url>\r
-        </repository>\r
-        <!-- Pax mirror -->\r
-        <!-- https://oss.sonatype.org/content/repositories/ops4j-releases -->\r
-        <repository>\r
-            <id>ops4j-releases</id>\r
-            <name>ops4j-releases</name>\r
-            <url>${nexusproxy}/repositories/ops4j-releases/</url>\r
-        </repository>\r
-        <!-- Third Packages hosted in local maven because not available in \r
-            other places -->\r
-        <repository>\r
-            <id>thirdparty</id>\r
-            <name>thirdparty</name>\r
-            <url>${nexusproxy}/repositories/thirdparty/</url>\r
-        </repository>\r
-        <!-- Jboss mirror -->\r
-        <!-- https://repository.jboss.org/nexus/content/repositories/releases -->\r
-        <repository>\r
-            <id>jboss.releases</id>\r
-            <name>jboss.releases</name>\r
-            <url>${nexusproxy}/repositories/jboss.releases/</url>\r
-        </repository>\r
-        <!-- OpenDayLight Released artifact -->\r
-        <repository>\r
-            <id>opendaylight-release</id>\r
-            <name>opendaylight-release</name>\r
-            <url>${nexusproxy}/repositories/opendaylight.release/</url>\r
-        </repository>\r
-        <!-- OpenDayLight Snapshot artifact -->\r
-        <repository>\r
-            <id>opendaylight-snapshot</id>\r
-            <name>opendaylight-snapshot</name>\r
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>\r
-        </repository>\r
-    </repositories>\r
-\r
-\r
-    <dependencyManagement>\r
-        <dependencies>\r
-            <dependency>\r
-                <groupId>junit</groupId>\r
-                <artifactId>junit</artifactId>\r
-                <version>4.10</version>\r
-                <scope>test</scope>\r
-                <optional>true</optional>\r
-            </dependency>\r
-            <dependency>\r
-                <groupId>org.slf4j</groupId>\r
-                <artifactId>slf4j-api</artifactId>\r
-                <version>1.7.2</version>\r
-            </dependency>\r
-            <dependency>\r
-                <groupId>com.google.guava</groupId>\r
-                <artifactId>guava</artifactId>\r
-                <version>14.0.1</version>\r
-            </dependency>\r
-        </dependencies>\r
-    </dependencyManagement>\r
-\r
-    <distributionManagement>\r
-        <!-- OpenDayLight Released artifact -->\r
-        <repository>\r
-            <id>opendaylight-release</id>\r
-            <url>${nexusproxy}/repositories/opendaylight.release/</url>\r
-        </repository>\r
-        <!-- OpenDayLight Snapshot artifact -->\r
-        <snapshotRepository>\r
-            <id>opendaylight-snapshot</id>\r
-            <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>\r
-        </snapshotRepository>\r
-        <site>\r
-            <id>${project.artifactId}-site</id>\r
-            <url>./</url>\r
-        </site>\r
-    </distributionManagement>\r
-\r
-    <build>\r
-        <plugins>\r
-            <plugin>\r
-                <groupId>org.apache.maven.plugins</groupId>\r
-                <artifactId>maven-compiler-plugin</artifactId>\r
-                <version>2.0</version>\r
-                <inherited>true</inherited>\r
-                <configuration>\r
-                    <source>1.7</source>\r
-                    <target>1.7</target>\r
-                </configuration>\r
-            </plugin>\r
-            <plugin>\r
-                <groupId>org.apache.maven.plugins</groupId>\r
-                <artifactId>maven-source-plugin</artifactId>\r
-                <executions>\r
-                    <execution>\r
-                        <id>attach-sources</id>\r
-                        <goals>\r
-                            <goal>jar</goal>\r
-                        </goals>\r
-                    </execution>\r
-                </executions>\r
-            </plugin>\r
-            <plugin>\r
-                <groupId>org.apache.maven.plugins</groupId>\r
-                <artifactId>maven-javadoc-plugin</artifactId>\r
-                <version>2.9.1</version>\r
-                <configuration>\r
-                    <stylesheet>maven</stylesheet>\r
-                </configuration>\r
-                <executions>\r
-                    <execution>\r
-                        <id>attach-javadocs</id>\r
-                        <goals>\r
-                            <goal>jar</goal>\r
-                        </goals>\r
-                    </execution>\r
-                    <execution>\r
-                        <goals>\r
-                            <goal>aggregate</goal>\r
-                        </goals>\r
-                        <phase>site</phase>\r
-                    </execution>\r
-                </executions>\r
-            </plugin>\r
-        </plugins>\r
-    </build>\r
-\r
-    <reporting>\r
-        <plugins>\r
-            <plugin>\r
-                <groupId>org.codehaus.mojo</groupId>\r
-                <artifactId>findbugs-maven-plugin</artifactId>\r
-                <version>2.4.0</version>\r
-                <configuration>\r
-                    <effort>Max</effort>\r
-                    <threshold>Low</threshold>\r
-                    <goal>site</goal>\r
-                </configuration>\r
-            </plugin>\r
-            <plugin>\r
-                <groupId>org.codehaus.mojo</groupId>\r
-                <artifactId>jdepend-maven-plugin</artifactId>\r
-                <version>2.0-beta-2</version>\r
-            </plugin>\r
-        </plugins>\r
-    </reporting>\r
-\r
-</project>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+ Copyright (c) 2013 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">
+
+    <modelVersion>4.0.0</modelVersion>
+    <artifactId>yangtools</artifactId>
+    <groupId>org.opendaylight.yangtools</groupId>
+    <version>0.6.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>
+
+        <!-- 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>
+
+        <!-- Supporting Libraries -->
+        <commons.lang.version>3.1</commons.lang.version>
+        <junit.version>4.10</junit.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>
+    </properties>
+
+    <scm>
+        <connection>scm:git:ssh://git.opendaylight.org:29418/yangtools.git</connection>
+        <developerConnection>scm:git:ssh://git.opendaylight.org:29418/yangtools.git</developerConnection>
+        <url>https://wiki.opendaylight.org/view/YANG_Tools:Main</url>
+        <tag>HEAD</tag>
+    </scm>
+
+    <modules>
+        <module>code-generator</module>
+        <module>common</module>
+        <module>integration-test</module>
+        <module>model</module>
+        <module>restconf</module>
+        <module>websocket</module>
+        <module>yang</module>
+        <!-- module>third-party</module -->
+    </modules>
+
+    <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>
+    </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>slf4j-api</artifactId>
+                <version>${slf4j.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.lang.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.code.findbugs</groupId>
+                <artifactId>jsr305</artifactId>
+                <version>2.0.3</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>
+
+
+            <!-- Our artifacts -->
+            <dependency>
+                <groupId>${project.groupId}</groupId>
+                <artifactId>concepts</artifactId>
+                <version>${project.version}</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>
+    </distributionManagement>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-jar-plugin</artifactId>
+                    <version>${maven.jar.version}</version>
+                    <configuration>
+                        <archive>
+                            <!-- Bundle OSGi Manifest created by maven-bundle-plugin
+                                into jar file -->
+                            <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>2.5</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>
+                <configuration>
+                    <effort>Max</effort>
+                    <threshold>Low</threshold>
+                    <goal>site</goal>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>jdepend-maven-plugin</artifactId>
+                <version>2.0-beta-2</version>
+            </plugin>
+        </plugins>
+    </reporting>
+</project>