From 981bb21756cf9b16d4f386c8154398550e0f6c2e 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 0a0b97c9..02f0f609 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