# This workflow automatically tests new commits and pull requests as they come in. # Note that this does not upload any artifacts, you will need to compile mcMMO manually # if you wish to create the actual jar. name: Compile and test on: # We run our tests whenever the pom or a source file was touched. # There is no need to run Maven when only the changelog was touched. # We may also want to re-run this workflow when the workflow file itself # was updated too. push: paths: - 'src/**' - 'pom.xml' - '.github/workflows/maven.yml' # Whenever someone submits a new pull request which modified the pom or a source file, # we want to ensure it compiles successfully and that all tests will pass. pull_request: paths: - 'src/**' - 'pom.xml' jobs: compile: name: Maven compiler runs-on: ubuntu-latest steps: # 1. Check out the current working tree - name: Checkout repository uses: actions/checkout@v2 # 2. Setup Java 1.8 JDK - name: Java 1.8 setup uses: actions/setup-java@v1.4.3 with: java-package: jdk java-version: 1.8 # 3. Setup local Maven package cache to speed up building - name: Cache Maven packages uses: actions/cache@v2 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 # 4. Build via Maven - name: Build via Maven run: mvn verify -B --file pom.xml