setup-java/README.md
Gil Tene 7d219e5bd5
Add java-package parameter to action, support jre, jdk, and jdk+fx (#1)
* Add java-package parameter to action, support jre, jdk, and jdk+fx (#1)

* Update tests to use 'jdk', 'jre', and 'jdk+fx' javaPackage parameters

* Match extension only at end of line

* Update README.md

* Update workflow to use 'node-version' instead of deprecated 'version'
2019-11-02 21:39:35 -07:00

2.0 KiB

setup-java

GitHub Actions status

This action sets up a java environment for use in actions by:

  • optionally downloading and caching a requested version of java by version and adding to PATH. Default downloads are populated from the Zulu Community distribution of OpenJDK
  • registering problem matchers for error output

Usage

See action.yml

Basic:

steps:
- uses: actions/checkout@latest
- uses: actions/setup-java@v1
  with:
    java-version: '11.0.4' // The Java version to make available on the path. Takes a whole or semver Java version, or 1.x syntax (e.g. 1.8 => Jdk 8.x)
    java-package: jdk // (jre, jdk, or jdk+fx) - defaults to jdk
    architecture: x64 // (x64 or x86) - defaults to x64
- run: java -cp java HelloWorldApp

From local file:

steps:
- uses: actions/checkout@master
- uses: actions/setup-java@v1
  with:
    java-version: '4.0.0'
    architecture: x64
    jdkFile: <path to jdkFile> # Optional - jdkFile to install java from. Useful for versions not found on Zulu Community CDN
- run: java -cp java HelloWorldApp

Matrix Testing:

jobs:
  build:
    runs-on: ubuntu-16.04
    strategy:
      matrix:
        # test against latest update of each major Java version, as well as specific updates of LTS versions:
        java: [ 1.6, 6.0.83, 7, 7.0.181, 8, 8.0.192, 9.0,x, 10, 11.0.x, 11.0.3, 12, 13 ]
    name: Java ${{ matrix.java }} sample
    steps:
      - uses: actions/checkout@master
      - name: Setup java
        uses: actions/setup-java@v1
        with:
          java-version: ${{ matrix.java }}
      - run: java -cp java HelloWorldApp

License

The scripts and documentation in this project are released under the MIT License

Contributions

Contributions are welcome! See Contributor's Guide