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.
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
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.