From 701c2e794e8e5026f0fc571d9e3a5978d153be0c Mon Sep 17 00:00:00 2001 From: Ta-Ching Chen Date: Thu, 20 Jun 2019 17:03:17 +0800 Subject: [PATCH] Reuse maven build cache in JVM environment build process (#1207) --- environments/jvm/Dockerfile | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/environments/jvm/Dockerfile b/environments/jvm/Dockerfile index 0a0b97c9f..02f0f6092 100644 --- a/environments/jvm/Dockerfile +++ b/environments/jvm/Dockerfile @@ -1,7 +1,13 @@ FROM maven:3.5-jdk-8 as BUILD -COPY src /usr/src/myapp/src -COPY pom.xml /usr/src/myapp -RUN mvn -f /usr/src/myapp/pom.xml clean package +WORKDIR /usr/src/myapp/ + +# To reuse the build cache, here we split maven dependency +# download and package into two RUN commands to avoid cache invalidation. +COPY pom.xml . +RUN mvn dependency:go-offline + +COPY src /usr/src/myapp/src/ +RUN mvn package FROM openjdk:8-jdk-alpine VOLUME /tmp