setup-java/docs/switching-to-v2.md

1.5 KiB

Switching to V2

Java distribution

The major breaking change in V2 is the new mandatory distribution input. This field should be specified with one of supported distributions. See Supported distributions for a list of available options.
Use the zulu keyword if you would like to continue using the same distribution as in V1.

steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
  with:
    distribution: 'zulu'
    java-version: '11'
    java-package: jdk # optional (jdk or jre) - defaults to jdk
- run: java -cp java HelloWorldApp

General recommendation — configure CI with the same distribution that is used on your local dev machine.

Installing custom Java distribution from local file

Since the distribution input is required in V2, you should specify it using jdkfile to continue installing Java from a local file on the runner

steps:
- run: |
    download_url="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.10%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.10_9.tar.gz"
    wget -O $RUNNER_TEMP/java_package.tar.gz $download_url    
- uses: actions/setup-java@v2
  with:
    distribution: 'jdkfile'
    jdkFile: ${{ runner.temp }}/java_package.tar.gz
    java-version: '11.0.0'
    architecture: x64

Dropping legacy Java version syntax 1.x

V1 supported legacy Java syntax such as 1.8 (same as 8) and 1.8.0.212 (same as 8.0.212). V2 dropped support for legacy syntax so workflows should be updated accordingly.