<parent>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
<relativePath>../odlparent-lite</relativePath>
</parent>
<java.version.target>${maven.compiler.target}</java.version.target>
<!-- Used in openflowplugin -->
- <enforcer.version>3.0.0-M1</enforcer.version>
- <!-- Used in neutron, ovsdb -->
- <jacoco.version>0.8.2</jacoco.version>
+ <enforcer.version>3.0.0-M2</enforcer.version>
<!-- Used in controller, genius, infrautils, netconf, netvirt, ovsdb, serviceutils -->
<karaf.version>4.2.1</karaf.version>
<!-- Used in bgpcep, lispflowmapping -->
<!-- Only used internally -->
<bouncycastle.version>1.60</bouncycastle.version>
+ <!-- JaCoCo configuration, by default tied to Sonar configuration, but can be overridden separately
+ to allow projects to report Sonar values from the entire project. -->
+ <jacoco.destFile>${project.build.directory}/code-coverage/jacoco.exec</jacoco.destFile>
+
<!-- Default Sonar configuration -->
<sonar-jacoco-listeners.version>3.8</sonar-jacoco-listeners.version>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
- <sonar.jacoco.reportPath>${project.build.directory}/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
+ <sonar.jacoco.reportPath>${jacoco.destFile}</sonar.jacoco.reportPath>
<sonar.jacoco.itReportPath>${project.build.directory}/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
+
<!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
<sonar.exclusions>**/gen/**,**/generated-sources/**,**/generated-test-sources/**,**/yang-gen/**,**/yang-gen-config/**,**/yang-gen-sal/**,**/yang-gen-code/**,**/pax/**</sonar.exclusions>
<!-- Opt-in code quality checks -->
<pmd.cpd.fail>false</pmd.cpd.fail> <!-- Copy/paste detection -->
<duplicate-finder.skip>true</duplicate-finder.skip> <!-- Classpath duplicates -->
+
+ <!-- Redirect test output to files (overridable) -->
+ <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
</properties>
<dependencyManagement>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odlparent-artifacts</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<version>2.20.1</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-inline</artifactId>
+ <version>2.20.1</version>
+ <scope>test</scope>
+ </dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<!-- Generates immutable implementations, builders, the works -->
<groupId>org.immutables</groupId>
<artifactId>value</artifactId>
- <version>2.6.3</version>
+ <version>2.7.1</version>
<!-- Must be provided; scope=test here breaks APT in Eclipse :( -->
<scope>provided</scope>
</dependency>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
+
+ <!-- log4j2 -->
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-bom</artifactId>
+ <version>2.11.1</version>
+ <scope>import</scope>
+ <type>pom</type>
+ </dependency>
+
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.antlr</artifactId>
- <version>2.7.1</version>
+ <version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.core</artifactId>
- <version>2.7.1</version>
+ <version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.moxy</artifactId>
- <version>2.7.1</version>
+ <version>2.7.3</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>uncommons-maths</artifactId>
<version>1.2.2a</version>
</dependency>
- <dependency>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <version>2.5.0</version>
- </dependency>
<!-- Aeron, required by Akka -->
<dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-core</artifactId>
- <version>2.6.1</version>
+ <version>2.6.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-matchers</artifactId>
- <version>2.6.1</version>
+ <version>2.6.2</version>
<scope>test</scope>
</dependency>
<!-- FIXME: remove this once we have migrated over -->
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-legacy</artifactId>
- <version>2.6.1</version>
+ <version>2.6.2</version>
<scope>test</scope>
</dependency>
<version>1</version>
<optional>true</optional>
</dependency>
- <dependency>
- <groupId>org.ops4j.pax.cdi</groupId>
- <artifactId>pax-cdi-api</artifactId>
- <version>1.0.0</version>
- <optional>true</optional>
- </dependency>
<!-- Cassandra -->
<dependency>
<artifactId>org.apache.aries.blueprint.core</artifactId>
<version>1.9.0</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.aries.blueprint</groupId>
+ <artifactId>blueprint-maven-plugin-annotation</artifactId>
+ <version>1.3.0</version>
+ <optional>true</optional>
+ </dependency>
<!-- Apache SSHD with netty -->
<dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>checkstyle</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odl-license</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.github.sevntu-checkstyle</groupId>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.7.0</version>
+ <version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgs>
<arg>-parameters</arg>
<arg>-Xlint:deprecation</arg>
+ <arg>-Xlint:unchecked</arg>
</compilerArgs>
</configuration>
</plugin>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
- <version>2.20.1</version>
+ <version>2.22.0</version>
</plugin>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
- <version>2.0.0</version>
+ <version>3.1.0</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
- <version>3.0.2</version>
+ <version>3.1.0</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<artifactItem>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odl-license</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
- <version>3.0.1</version>
+ <version>3.1.0</version>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
- <version>3.1.0</version>
+ <version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.18.1</version>
+ <version>2.22.0</version>
<configuration>
- <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ <redirectTestOutputToFile>${maven.test.redirectTestOutputToFile}</redirectTestOutputToFile>
<trimStackTrace>false</trimStackTrace>
</configuration>
</plugin>
<groupId>org.apache.aries.blueprint</groupId>
<artifactId>blueprint-maven-plugin</artifactId>
<version>1.10.0</version>
+ <!-- TODO remove dependencies when we bump from 1.10.0 to 1.11.0 (or 1.10.1);
+ see https://jira.opendaylight.org/browse/ODLPARENT-167 & https://jira.apache.org/jira/browse/ARIES-1826 -->
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.xbean</groupId>
+ <artifactId>xbean-finder-shaded</artifactId>
+ <version>4.9</version>
+ </dependency>
+ </dependencies>
<configuration>
<scanPaths>
<scanPath>org.opendaylight</scanPath>
</scanPaths>
- <generatedDir>org/opendaylight/blueprint/</generatedDir>
</configuration>
<executions>
<execution>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
- <version>3.5.0</version>
+ <version>4.0.0</version>
<extensions>true</extensions>
<configuration>
<instructions>
so that the build doesn't fail if there is no .../.git/ - so git.properties is effectively optional;
and so the '-' there is needed to make the maven-bundle-plugin if that resource is not present. -->
<Include-Resource>{maven-resources},${project.build.directory}/classes/LICENSE,META-INF/git.properties=-${project.build.directory}/classes/META-INF/git.properties</Include-Resource>
+
+ <!-- Based on https://dev.eclipse.org/mhonarc/lists/equinox-dev/msg01088.html we do want
+ to generate Import-Service and Export-Service headers. -->
+ <_removeheaders>Import-Service,Export-Service</_removeheaders>
</instructions>
</configuration>
</plugin>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>findbugs</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
</dependency>
</dependencies>
<configuration>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs</artifactId>
- <version>3.1.6</version>
+ <version>3.1.7</version>
</dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>spotbugs</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>4.0.2-SNAPSHOT</version>
</dependency>
</dependencies>
<configuration>
<versionRange>[0.7.0,)</versionRange>
<goals>
<goal>prepare-agent</goal>
- <goal>report</goal>
</goals>
</pluginExecutionFilter>
<action>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <version>${jacoco.version}</version>
<configuration>
<!-- Note: This exclusion list should match <sonar.exclusions>
property above -->
<goal>prepare-agent</goal>
</goals>
<configuration>
- <destFile>${sonar.jacoco.reportPath}</destFile>
- </configuration>
- </execution>
- <execution>
- <id>post-unit-test</id>
- <goals>
- <goal>report</goal>
- </goals>
- <configuration>
- <dataFile>${sonar.jacoco.reportPath}</dataFile>
+ <destFile>${jacoco.destFile}</destFile>
</configuration>
</execution>
</executions>
</plugins>
</reporting>
- <!--
- 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}/${project.artifactId}/</url>
-
- <distributionManagement>
- <site>
- <id>opendaylight-site</id>
- <url>${nexus.site.url}/${project.artifactId}/</url>
- </site>
- </distributionManagement>
+ <profiles>
+ <profile>
+ <!-- On JDK9-and-later findbugs fails -->
+ <id>jdk9-findbugs</id>
+ <activation>
+ <jdk>[9,)</jdk>
+ </activation>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <configuration combine.children="append">
+ <skip>true</skip>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>