Browse Source

Selected java10 fixes (#3464)

* Follow redirects in a few curl commands

We don't want these downloads to break if the hosts decide to shuffle
things around with redirects.

* Make Kotlin frameworks compatible with Java 10

* Make blade, dropwizard, jlhttp compatible with Java 10

* Fix hexagon build
Michael Hixson 7 years ago
parent
commit
8aa3831d1a

+ 5 - 5
frameworks/Java/blade/pom.xml

@@ -19,32 +19,32 @@
         <dependency>
         <dependency>
             <groupId>com.bladejava</groupId>
             <groupId>com.bladejava</groupId>
             <artifactId>blade-mvc</artifactId>
             <artifactId>blade-mvc</artifactId>
-            <version>2.0.4-R1</version>
+            <version>2.0.7-beta2</version>
         </dependency>
         </dependency>
 
 
         <dependency>
         <dependency>
             <groupId>com.bladejava</groupId>
             <groupId>com.bladejava</groupId>
             <artifactId>blade-jdbc</artifactId>
             <artifactId>blade-jdbc</artifactId>
-            <version>0.2.2-beta</version>
+            <version>0.2.2-RELEASE</version>
         </dependency>
         </dependency>
 
 
         <dependency>
         <dependency>
             <groupId>io.netty</groupId>
             <groupId>io.netty</groupId>
             <artifactId>netty-transport-native-epoll</artifactId>
             <artifactId>netty-transport-native-epoll</artifactId>
-            <version>4.1.16.Final</version>
+            <version>4.1.22.Final</version>
             <classifier>linux-x86_64</classifier>
             <classifier>linux-x86_64</classifier>
         </dependency>
         </dependency>
 
 
         <dependency>
         <dependency>
             <groupId>mysql</groupId>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <artifactId>mysql-connector-java</artifactId>
-            <version>5.1.41</version>
+            <version>5.1.46</version>
         </dependency>
         </dependency>
 
 
         <dependency>
         <dependency>
             <groupId>com.zaxxer</groupId>
             <groupId>com.zaxxer</groupId>
             <artifactId>HikariCP</artifactId>
             <artifactId>HikariCP</artifactId>
-            <version>2.7.1</version>
+            <version>2.7.8</version>
         </dependency>
         </dependency>
 
 
     </dependencies>
     </dependencies>

+ 3 - 3
frameworks/Java/dropwizard/pom.xml

@@ -10,10 +10,10 @@
 	<properties>
 	<properties>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 		<jdk.version>1.8</jdk.version>
 		<jdk.version>1.8</jdk.version>
-		<dropwizard.version>1.2.2</dropwizard.version>
-		<jaxb-api.version>2.2.12</jaxb-api.version>
+		<dropwizard.version>1.3.0</dropwizard.version>
+		<jaxb-api.version>2.3.0</jaxb-api.version>
 		<mysql-connector-java.version>5.1.45</mysql-connector-java.version>
 		<mysql-connector-java.version>5.1.45</mysql-connector-java.version>
-		<mongojack.version>2.8.0</mongojack.version>
+		<mongojack.version>2.8.2</mongojack.version>
 		<postgres-jdbc.version>42.1.4</postgres-jdbc.version>
 		<postgres-jdbc.version>42.1.4</postgres-jdbc.version>
 		<maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
 		<maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
 		<maven-jar-plugin.version>3.0.2</maven-jar-plugin.version>
 		<maven-jar-plugin.version>3.0.2</maven-jar-plugin.version>

+ 5 - 5
frameworks/Java/jlhttp/pom.xml

@@ -16,17 +16,17 @@
         <dependency>
         <dependency>
             <groupId>net.freeutils</groupId>
             <groupId>net.freeutils</groupId>
             <artifactId>jlhttp</artifactId>
             <artifactId>jlhttp</artifactId>
-            <version>2.2</version>
+            <version>2.3</version>
         </dependency>
         </dependency>
     <dependency>
     <dependency>
         <groupId>com.fasterxml.jackson.core</groupId>
         <groupId>com.fasterxml.jackson.core</groupId>
         <artifactId>jackson-databind</artifactId>
         <artifactId>jackson-databind</artifactId>
-        <version>2.7.4</version>
+        <version>2.9.5</version>
     </dependency>
     </dependency>
     <dependency>
     <dependency>
         <groupId>com.fasterxml.jackson.module</groupId>
         <groupId>com.fasterxml.jackson.module</groupId>
         <artifactId>jackson-module-afterburner</artifactId>
         <artifactId>jackson-module-afterburner</artifactId>
-        <version>2.7.4</version>
+        <version>2.9.5</version>
     </dependency>
     </dependency>
     </dependencies>
     </dependencies>
 
 
@@ -36,7 +36,7 @@
                 <inherited>true</inherited>
                 <inherited>true</inherited>
                 <groupId>org.apache.maven.plugins</groupId>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>2.5.1</version>
+                <version>3.7.0</version>
                 <configuration>
                 <configuration>
                     <source>1.7</source>
                     <source>1.7</source>
                     <target>1.7</target>
                     <target>1.7</target>
@@ -46,7 +46,7 @@
             </plugin>
             </plugin>
             <plugin>
             <plugin>
                 <artifactId>maven-assembly-plugin</artifactId>
                 <artifactId>maven-assembly-plugin</artifactId>
-                <version>2.5.4</version>
+                <version>3.1.0</version>
                 <configuration>
                 <configuration>
                     <archive>
                     <archive>
                         <manifest>
                         <manifest>

+ 1 - 1
frameworks/Kotlin/hexagon/build.gradle

@@ -1,6 +1,6 @@
 
 
 plugins {
 plugins {
-    id 'org.jetbrains.kotlin.jvm' version '1.2.0'
+    id 'org.jetbrains.kotlin.jvm' version '1.2.31'
 }
 }
 
 
 apply from: "$gradleScripts/kotlin.gradle"
 apply from: "$gradleScripts/kotlin.gradle"

+ 7 - 7
frameworks/Kotlin/hexagon/gradle.properties

@@ -1,12 +1,12 @@
 activationVersion=1.2.0
 activationVersion=1.2.0
-ahcVersion=2.0.37
+ahcVersion=2.4.4
 description=Hexagon web framework's benchmark
 description=Hexagon web framework's benchmark
 gradleScripts=https\://raw.githubusercontent.com/hexagonkt/hexagon/0.20.0/gradle
 gradleScripts=https\://raw.githubusercontent.com/hexagonkt/hexagon/0.20.0/gradle
 hexagonVersion=0.20.0
 hexagonVersion=0.20.0
-hikariVersion=2.7.4
-jettyVersion=9.4.8.v20171121
-kotlinVersion=1.2.0
+hikariVersion=2.7.8
+jettyVersion=9.4.9.v20180320
+kotlinVersion=1.2.31
 logbackVersion=1.2.3
 logbackVersion=1.2.3
-mongodbVersion=3.5.0
-postgresqlVersion=42.1.4
-testngVersion=6.13.1
+mongodbVersion=3.6.3
+postgresqlVersion=42.2.2
+testngVersion=6.14.3

+ 1 - 1
frameworks/Kotlin/http4k/build.gradle

@@ -1,5 +1,5 @@
 buildscript {
 buildscript {
-    ext.kotlin_version = "1.2.20"
+    ext.kotlin_version = "1.2.31"
     ext.http4k_version = "3.17.0"
     ext.http4k_version = "3.17.0"
 
 
     repositories {
     repositories {

BIN
frameworks/Kotlin/ktor/.mvn/wrapper/maven-wrapper.jar


+ 0 - 1
frameworks/Kotlin/ktor/.mvn/wrapper/maven-wrapper.properties

@@ -1 +0,0 @@
-distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip

+ 1 - 1
frameworks/Kotlin/ktor/ktor-base.dockerfile

@@ -1,4 +1,4 @@
 FROM tfb/maven:latest
 FROM tfb/maven:latest
 ADD ./ /ktor
 ADD ./ /ktor
 WORKDIR /ktor
 WORKDIR /ktor
-RUN ./mvnw clean package
+RUN mvn clean package

+ 0 - 234
frameworks/Kotlin/ktor/mvnw

@@ -1,234 +0,0 @@
-#!/bin/sh
-# ----------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License.  You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied.  See the License for the
-# specific language governing permissions and limitations
-# under the License.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven2 Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-#   JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-#   M2_HOME - location of maven2's installed home dir
-#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
-#     e.g. to debug Maven itself, use
-#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
-  if [ -f /etc/mavenrc ] ; then
-    . /etc/mavenrc
-  fi
-
-  if [ -f "$HOME/.mavenrc" ] ; then
-    . "$HOME/.mavenrc"
-  fi
-
-fi
-
-# OS specific support.  $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
-  CYGWIN*) cygwin=true ;;
-  MINGW*) mingw=true;;
-  Darwin*) darwin=true
-           #
-           # Look for the Apple JDKs first to preserve the existing behaviour, and then look
-           # for the new JDKs provided by Oracle.
-           # 
-           if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK ] ; then
-             #
-             # Apple JDKs
-             #
-             export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home
-           fi
-           
-           if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then
-             #
-             # Apple JDKs
-             #
-             export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
-           fi
-             
-           if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then
-             #
-             # Oracle JDKs
-             #
-             export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home
-           fi           
-
-           if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then
-             #
-             # Apple JDKs
-             #
-             export JAVA_HOME=`/usr/libexec/java_home`
-           fi
-           ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
-  if [ -r /etc/gentoo-release ] ; then
-    JAVA_HOME=`java-config --jre-home`
-  fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
-  ## resolve links - $0 may be a link to maven's home
-  PRG="$0"
-
-  # need this for relative symlinks
-  while [ -h "$PRG" ] ; do
-    ls=`ls -ld "$PRG"`
-    link=`expr "$ls" : '.*-> \(.*\)$'`
-    if expr "$link" : '/.*' > /dev/null; then
-      PRG="$link"
-    else
-      PRG="`dirname "$PRG"`/$link"
-    fi
-  done
-
-  saveddir=`pwd`
-
-  M2_HOME=`dirname "$PRG"`/..
-
-  # make it fully qualified
-  M2_HOME=`cd "$M2_HOME" && pwd`
-
-  cd "$saveddir"
-  # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
-  [ -n "$M2_HOME" ] &&
-    M2_HOME=`cygpath --unix "$M2_HOME"`
-  [ -n "$JAVA_HOME" ] &&
-    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-  [ -n "$CLASSPATH" ] &&
-    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Migwn, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
-  [ -n "$M2_HOME" ] &&
-    M2_HOME="`(cd "$M2_HOME"; pwd)`"
-  [ -n "$JAVA_HOME" ] &&
-    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-  # TODO classpath?
-fi
-
-if [ -z "$JAVA_HOME" ]; then
-  javaExecutable="`which javac`"
-  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
-    # readlink(1) is not available as standard on Solaris 10.
-    readLink=`which readlink`
-    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
-      if $darwin ; then
-        javaHome="`dirname \"$javaExecutable\"`"
-        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
-      else
-        javaExecutable="`readlink -f \"$javaExecutable\"`"
-      fi
-      javaHome="`dirname \"$javaExecutable\"`"
-      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
-      JAVA_HOME="$javaHome"
-      export JAVA_HOME
-    fi
-  fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
-  if [ -n "$JAVA_HOME"  ] ; then
-    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-      # IBM's JDK on AIX uses strange locations for the executables
-      JAVACMD="$JAVA_HOME/jre/sh/java"
-    else
-      JAVACMD="$JAVA_HOME/bin/java"
-    fi
-  else
-    JAVACMD="`which java`"
-  fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
-  echo "Error: JAVA_HOME is not defined correctly." >&2
-  echo "  We cannot execute $JAVACMD" >&2
-  exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
-  echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
-  [ -n "$M2_HOME" ] &&
-    M2_HOME=`cygpath --path --windows "$M2_HOME"`
-  [ -n "$JAVA_HOME" ] &&
-    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
-  [ -n "$CLASSPATH" ] &&
-    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
-fi
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-  local basedir=$(pwd)
-  local wdir=$(pwd)
-  while [ "$wdir" != '/' ] ; do
-    if [ -d "$wdir"/.mvn ] ; then
-      basedir=$wdir
-      break
-    fi
-    wdir=$(cd "$wdir/.."; pwd)
-  done
-  echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
-  if [ -f "$1" ]; then
-    echo "$(tr -s '\n' ' ' < "$1")"
-  fi
-}
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-$(find_maven_basedir)}
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# Provide a "standardized" way to retrieve the CLI args that will 
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
-  $MAVEN_OPTS \
-  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
-  "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
-  ${WRAPPER_LAUNCHER} $MAVEN_CMD_LINE_ARGS
-

+ 4 - 4
frameworks/Kotlin/ktor/pom.xml

@@ -14,11 +14,11 @@
     <properties>
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <gson.version>2.8.2</gson.version>
         <gson.version>2.8.2</gson.version>
-        <hikaricp.version>2.7.4</hikaricp.version>
-        <kotlin.version>1.2.21</kotlin.version>
-        <ktor.version>0.9.2-alpha-1</ktor.version>
+        <hikaricp.version>2.7.8</hikaricp.version>
+        <kotlin.version>1.2.31</kotlin.version>
+        <ktor.version>0.9.2-alpha-3</ktor.version>
         <logback.version>1.2.3</logback.version>
         <logback.version>1.2.3</logback.version>
-        <mysql-connector.version>5.1.44</mysql-connector.version>
+        <mysql-connector.version>5.1.46</mysql-connector.version>
     </properties>
     </properties>
 
 
     <dependencies>
     <dependencies>

+ 1 - 1
frameworks/Kotlin/pronghorn/build.gradle

@@ -4,7 +4,7 @@ version '0.1.0'
 buildscript {
 buildscript {
     ext {
     ext {
         pronghornVersion = '0.1.3'
         pronghornVersion = '0.1.3'
-        kotlinVersion = '1.2.0'
+        kotlinVersion = '1.2.31'
     }
     }
 
 
     repositories {
     repositories {

+ 1 - 1
toolset/setup/docker/languages/java.dockerfile

@@ -2,6 +2,6 @@ FROM tfb/base:latest
 
 
 RUN mkdir /java
 RUN mkdir /java
 WORKDIR /java
 WORKDIR /java
-RUN curl -s https://download.java.net/java/GA/jdk9/9.0.4/binaries/openjdk-9.0.4_linux-x64_bin.tar.gz | tar xz
+RUN curl -sL https://download.java.net/java/GA/jdk9/9.0.4/binaries/openjdk-9.0.4_linux-x64_bin.tar.gz | tar xz
 ENV JAVA_HOME=/java/jdk-9.0.4
 ENV JAVA_HOME=/java/jdk-9.0.4
 ENV PATH="${JAVA_HOME}/bin:${PATH}"
 ENV PATH="${JAVA_HOME}/bin:${PATH}"

+ 1 - 1
toolset/setup/docker/systools/maven-java8.dockerfile

@@ -2,7 +2,7 @@ FROM tfb/java8:latest
 
 
 RUN mkdir /maven
 RUN mkdir /maven
 WORKDIR /maven
 WORKDIR /maven
-RUN curl -s http://mirrors.advancedhosters.com/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz | tar xz
+RUN curl -sL http://mirrors.advancedhosters.com/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz | tar xz
 ENV MAVEN_HOME=/maven/apache-maven-3.5.2
 ENV MAVEN_HOME=/maven/apache-maven-3.5.2
 ENV PATH="${MAVEN_HOME}/bin:${PATH}"
 ENV PATH="${MAVEN_HOME}/bin:${PATH}"
 
 

+ 1 - 1
toolset/setup/docker/systools/maven.dockerfile

@@ -2,7 +2,7 @@ FROM tfb/java:latest
 
 
 RUN mkdir /maven
 RUN mkdir /maven
 WORKDIR /maven
 WORKDIR /maven
-RUN curl -s http://mirrors.advancedhosters.com/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz | tar xz
+RUN curl -sL http://mirrors.advancedhosters.com/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz | tar xz
 ENV MAVEN_HOME=/maven/apache-maven-3.5.2
 ENV MAVEN_HOME=/maven/apache-maven-3.5.2
 ENV PATH="${MAVEN_HOME}/bin:${PATH}"
 ENV PATH="${MAVEN_HOME}/bin:${PATH}"
 
 

+ 1 - 1
toolset/setup/docker/webservers/resin-java8.dockerfile

@@ -2,7 +2,7 @@ FROM tfb/java8:latest
 
 
 RUN mkdir /resin
 RUN mkdir /resin
 WORKDIR /resin
 WORKDIR /resin
-RUN curl -s http://www.caucho.com/download/resin-4.0.55.tar.gz | tar xz
+RUN curl -sL http://www.caucho.com/download/resin-4.0.55.tar.gz | tar xz
 
 
 ENV RESIN_HOME=/resin/resin-4.0.55
 ENV RESIN_HOME=/resin/resin-4.0.55
 
 

+ 1 - 1
toolset/setup/docker/webservers/resin.dockerfile

@@ -2,7 +2,7 @@ FROM tfb/java:latest
 
 
 RUN mkdir /resin
 RUN mkdir /resin
 WORKDIR /resin
 WORKDIR /resin
-RUN curl -s http://www.caucho.com/download/resin-4.0.55.tar.gz | tar xz
+RUN curl -sL http://www.caucho.com/download/resin-4.0.55.tar.gz | tar xz
 
 
 ENV RESIN_HOME=/resin/resin-4.0.55
 ENV RESIN_HOME=/resin/resin-4.0.55
 
 

+ 1 - 1
toolset/setup/docker/webservers/tomcat.dockerfile

@@ -2,7 +2,7 @@ FROM tfb/java:latest
 
 
 RUN mkdir /tomcat
 RUN mkdir /tomcat
 WORKDIR /tomcat
 WORKDIR /tomcat
-RUN curl -s http://mirror.stjschools.org/public/apache/tomcat/tomcat-9/v9.0.6/bin/apache-tomcat-9.0.6.tar.gz | tar xz
+RUN curl -sL http://mirror.stjschools.org/public/apache/tomcat/tomcat-9/v9.0.6/bin/apache-tomcat-9.0.6.tar.gz | tar xz
 
 
 # Remove the default app so that frameworks using Tomcat don't have to.
 # Remove the default app so that frameworks using Tomcat don't have to.
 RUN rm -rf /tomcat/apache-tomcat-9.0.6/webapps/*
 RUN rm -rf /tomcat/apache-tomcat-9.0.6/webapps/*