| # |
| # Licensed to the Apache Software Foundation (ASF) under one or more contributor |
| # license agreements. See the NOTICE file distributed with this work for additional |
| # information regarding copyright ownership. The ASF licenses this file to you |
| # under the Apache License, Version 2.0 (the # "License"); you may not use this |
| # file except in compliance with the License. You may obtain a copy of the License |
| # at: |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software distributed |
| # under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR |
| # CONDITIONS OF ANY KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations under the License. |
| # |
| name: Java CI |
| on: [push, pull_request] |
| env: |
| MAVEN_OPTS: -Dmaven.artifact.threads=256 -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn |
| jobs: |
| build: |
| runs-on: ubuntu-latest |
| steps: |
| - uses: actions/checkout@v3 |
| - name: Setup Java JDK |
| uses: actions/setup-java@v3 |
| with: |
| distribution: 'zulu' |
| java-version: 11 |
| - name: 'Cache Maven packages' |
| uses: actions/cache@v3 |
| with: |
| path: ~/.m2 |
| key: 'cache' |
| restore-keys: 'cache' |
| - name: 'Build with Maven' |
| run: mvn -B install --file pom.xml |
| - name: 'Remove Snapshots Before Caching' |
| run: find ~/.m2 -name '*SNAPSHOT' | xargs rm -Rf |