Adopt akka-2.6.x
[neutron.git] / parent / pom.xml
index 74683753d63184e556b448aa5d5adf9af4dec26e..9f445039d0baeddba9e5c55853e507c0c162ced7 100644 (file)
@@ -6,20 +6,19 @@
  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>
 
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>0.13.0-SNAPSHOT</version>
+    <version>7.0.5</version>
     <relativePath/>
   </parent>
 
   <groupId>org.opendaylight.neutron</groupId>
   <artifactId>project-neutron-parent</artifactId>
-  <version>0.11.0-SNAPSHOT</version>
+  <version>0.16.0-SNAPSHOT</version>
   <packaging>pom</packaging>
   <!-- <name> formatting is used by autorelease to parse and notify projects on
        build failure. Please do not modify this unless you have a good reason. -->
       <dependency>
         <groupId>org.opendaylight.infrautils</groupId>
         <artifactId>infrautils-artifacts</artifactId>
-        <version>1.4.0-SNAPSHOT</version>
+        <version>1.9.5</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
       <dependency>
         <groupId>org.opendaylight.controller</groupId>
-        <artifactId>mdsal-artifacts</artifactId>
-        <version>1.8.0-SNAPSHOT</version>
+        <artifactId>controller-artifacts</artifactId>
+        <version>3.0.6</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
+
+      <!-- NEUTRON-197: We need to enforce usage of org.glassfish:javax.json v1.0.4,
+           that exact old version, because only that version includes both packages javax.json.*
+           as well as org.glassfish.json.* (AND THEREFORE THE Class.forName WORKS EVEN UNDER OSGi).
+
+           Newer releases of org.glassfish:javax.json (such as 1.1.2) have (only) the
+           org.glassfish.json packages, with a dep to the separate new javax.json:javax.json-api
+           which contains (only) the javax.json packages; this nicer API / Impl split packaging breaks under OSGi.
+
+           We must also prevent Moxy from dragging along javax.json:javax.json-api
+           to prevent confusing classpath duplicates on javax.json.  Moxy changed its policy from directly depending
+           on org.glassfish:javax.json 1.0.4 in its 2.7.1 to depending on javax.json:javax.json-api since 2.7.3.
+
+           The same block is copy/pasted in ../features/parent (that's the
+           neutron-single-feature-parent, not to be confused with this project-neutron-parent);
+           keep any changes made there, or here, in sync with each other. -->
+      <dependency>
+         <groupId>org.eclipse.persistence</groupId>
+         <artifactId>org.eclipse.persistence.moxy</artifactId>
+         <version>2.7.7</version>
+         <exclusions>
+           <exclusion>
+             <groupId>javax.json</groupId>
+             <artifactId>javax.json-api</artifactId>
+           </exclusion>
+         </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>org.glassfish</groupId>
+        <artifactId>javax.json</artifactId>
+        <!-- do not touch this version, see above -->
+        <version>1.0.4</version>
+      </dependency>
+      <dependency>
+        <groupId>javax.validation</groupId>
+        <artifactId>validation-api</artifactId>
+        <version>1.1.0.Final</version>
+      </dependency>
     </dependencies>
   </dependencyManagement>
 
           <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
         </configuration>
       </plugin>
+      <plugin>
+        <groupId>com.github.spotbugs</groupId>
+        <artifactId>spotbugs-maven-plugin</artifactId>
+        <configuration>
+          <failOnError>true</failOnError>
+        </configuration>
+      </plugin>
     </plugins>
   </build>
 </project>