mirror of
				https://gitea.com/actions/setup-java.git
				synced 2025-11-02 07:47:06 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# 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](../README.md#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.
 | 
						|
```yaml
 | 
						|
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
 | 
						|
```yaml
 | 
						|
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. 
 |