Java

This section explains how Shippable DevOps Assembly Lines Platform behaves when you set language: java in your shippable.yml for a runCI job

language: java
jdk:
  - oraclejdk8

The default version of the language image depends on the machine image selected for the subscription. You can override this by using the pre_ci_boot section or even build your own image from scratch.

Versions

This table helps you choose the right language version tag to set in your shippable.yml for your app. If you don't provide a jdk tag in your YML, the default version will be used.

The JDKs available vary depending on the tag of the language image; the JDK specified should be listed in the table for the language image tag used. The language image with a particular tag will be available on the edition of the Runtime AMI with the same version number. If you specify an image tag that does not match the Runtime AMI, it will be used but will also increase your build time.

Java JDK Language Image Tags Supported OS
openjdk9 v5.7.3 and later Ubuntu 16.04
openjdk8 v5.3.2 and later All
openjdk7 v5.3.2 and later All
oraclejdk9 v5.7.3 and later All
oraclejdk8 v5.3.2 and later All
oraclejdk7 v5.5.1 and earlier All

You can use more than one of these to test your app against multiple versions using matrix builds.

Default Behavior

build:
  ci: <is not set>

If you do not set the ci section of the YML, then we will inject this section to your YML definition at runtime:

build:
  ci:
    - gradle assemble                 # if build.gradle is present at root
    - mvn install -DskipTests=true    # if pom.xml is present at root
    - ant test                        # if above 2 cases are false

Shippable provided Runtime images

Each of the language images is built from the respective base OS version of the image. Since we install all of the packages, CLIs, and services on the base images, these language images get them automatically. For more information visit the respective base image pages.

Ubuntu 16.04

Built from drydock/u16all

Image Release Date Available in AMI
drydock/u16javall:v5.8.2 Aug 2017 - Latest Version v5.8.2
drydock/u16javall:v5.7.3 Jul 2017 v5.7.3
drydock/u16javall:v5.6.1 Jun 2017 v5.6.1
drydock/u16javall:v5.5.1 May 2017 v5.5.1
drydock/u16javall:v5.4.1 Apr 2017 v5.4.1
drydock/u16javall:v5.3.2 Mar 2017 v5.3.2

Ubuntu 14.04

Built from drydock/u14all

Image Release Date Available in AMI
drydock/u14javall:v5.8.2 Aug 2017 - Latest Version v5.8.2
drydock/u14javall:v5.7.3 Jul 2017 v5.7.3
drydock/u14javall:v5.6.1 Jun 2017 v5.6.1
drydock/u14javall:v5.5.1 May 2017 v5.5.1
drydock/u14javall:v5.4.1 Apr 2017 v5.4.1
drydock/u14javall:v5.3.2 Mar 2017 v5.3.2

Further Reading