[ASTERIXDB-2890] Minimum Java version 8->11
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- Update Mockito to unbreak tests and put it under
dependencyManagement.
- Update HttpTestUtil to avoid inspecting fields that
are usually invalid in JDK 11
- Enable parallel execution of surefire tests in
asterix-om to make up for slowdown of ExceptionTest
under Mockito 2+
Change-Id: Ib9aa81fa2e58954846218e9907562685c8cd09e3
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/5483
Reviewed-by: Ian Maxon <imaxon@uci.edu>
Reviewed-by: Michael Blow <mblow@apache.org>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Michael Blow <mblow@apache.org>
diff --git a/hyracks-fullstack/pom.xml b/hyracks-fullstack/pom.xml
index 85694a5..5af1995 100644
--- a/hyracks-fullstack/pom.xml
+++ b/hyracks-fullstack/pom.xml
@@ -49,7 +49,8 @@
<root.dir>${basedir}</root.dir>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<file.encoding>UTF-8</file.encoding>
- <source.jdk.version>1.8</source.jdk.version>
+ <source.jdk.version>11</source.jdk.version>
+ <target.jdk.version>11</target.jdk.version>
<javac.xlint.value>all</javac.xlint.value>
<jvm.extraargs />
<sonar.jacoco.reportPath>${env.PWD}/target/jacoco-merged.exec</sonar.jacoco.reportPath>
@@ -244,11 +245,6 @@
<version>${log4j.version}</version>
</dependency>
<dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <version>2.0.2-beta</version>
- </dependency>
- <dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
@@ -283,6 +279,26 @@
<artifactId>maven-plugin-api</artifactId>
<version>3.6.3</version>
</dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <version>3.10.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.powermock</groupId>
+ <artifactId>powermock-api-mockito2</artifactId>
+ <version>2.0.9</version>
+ </dependency>
+ <dependency>
+ <groupId>org.powermock</groupId>
+ <artifactId>powermock-module-junit4</artifactId>
+ <version>2.0.9</version>
+ </dependency>
+ <dependency>
+ <groupId>org.powermock</groupId>
+ <artifactId>powermock-core</artifactId>
+ <version>2.0.9</version>
+ </dependency>
</dependencies>
</dependencyManagement>
<build>
@@ -496,6 +512,20 @@
<requireMavenVersion>
<version>[3.3.9,)</version>
</requireMavenVersion>
+ <requireJavaVersion>
+ <version>[11,)</version>
+ </requireJavaVersion>
+ </rules>
+ </configuration>
+ </execution>
+ <execution>
+ <id>ensure-no-duplicate-deps</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <banDuplicatePomDependencyVersions/>
</rules>
</configuration>
</execution>
@@ -692,13 +722,18 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
- <version>3.1.1</version>
+ <version>3.1.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-maven-plugin</artifactId>
<version>1.1.4</version>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <version>3.0.0-M3</version>
+ </plugin>
</plugins>
</pluginManagement>
</build>
@@ -831,40 +866,6 @@
<failIfNoTests>false</failIfNoTests>
</properties>
</profile>
- <profile>
- <id>java8</id>
- <activation>
- <jdk>[1.8,)</jdk>
- </activation>
- <properties>
- <target.jdk.version>8</target.jdk.version>
- </properties>
- </profile>
- <profile>
- <id>java8-bootclasspath</id>
- <activation>
- <property>
- <name>java8-bootclasspath</name>
- </property>
- </activation>
- <properties>
- <target.jdk.version>8</target.jdk.version>
- </properties>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <compilerArgs combine.children="append">
- <arg>-bootclasspath</arg>
- <arg>${java8-bootclasspath}</arg>
- </compilerArgs>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
</profiles>
<modules>
<module>hyracks</module>