From 59ca4d67615fbfa23a2a21d7178628997f55f882 Mon Sep 17 00:00:00 2001 From: Ellis Michael Date: Thu, 18 Jan 2024 18:33:10 -0800 Subject: [PATCH] Upgrade minimum Java version to Java 17 --- .github/workflows/test-publish.yml | 2 +- README.md | 2 +- build.gradle | 4 ++-- handout-files/Makefile | 2 +- handout-files/README.md | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test-publish.yml b/.github/workflows/test-publish.yml index aebee79f..75ad3252 100644 --- a/.github/workflows/test-publish.yml +++ b/.github/workflows/test-publish.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [ '14', '17', '20', '21' ] + java: [ '17', '20', '21' ] steps: - uses: actions/checkout@v3 diff --git a/README.md b/README.md index c14f090d..e86f4290 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,7 @@ repository is an auto-built version of the handout. ## Contributing The main tools for development are the same as the students' dependencies — Java -14 and Python 3. You will also need a few utilities such as `wget` to build with +17 and Python 3. You will also need a few utilities such as `wget` to build with the provided `Makefile`; MacOS users will need `gtar` and `gcp` provided by the `coreutils` Homebrew package. diff --git a/build.gradle b/build.gradle index 170689ca..841bd7a2 100644 --- a/build.gradle +++ b/build.gradle @@ -9,8 +9,8 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar import com.github.jk1.license.render.TextReportRenderer java { - sourceCompatibility = '14' - targetCompatibility = '14' + sourceCompatibility = '17' + targetCompatibility = '17' } sourceSets { diff --git a/handout-files/Makefile b/handout-files/Makefile index 8d1a181c..99cfaa0b 100644 --- a/handout-files/Makefile +++ b/handout-files/Makefile @@ -1,7 +1,7 @@ ################################################################################ # Java compiler settings ################################################################################ -JC = javac -source 14 -g +JC = javac -source 17 -g ################################################################################ diff --git a/handout-files/README.md b/handout-files/README.md index a1d36b81..cef5db95 100644 --- a/handout-files/README.md +++ b/handout-files/README.md @@ -102,7 +102,7 @@ and/or failures that might lead to a violation of the invariants of the system. ## Getting Started -The only dependency for these labs is Java 14. Installing `openjdk-14-jdk` on +The only dependency for these labs is Java 17+. Installing `openjdk-17-jdk` on most Linux distros should be sufficient. We recommend using IntelliJ (a configuration directory is included in each @@ -117,13 +117,13 @@ In order to run the tests from the terminal, you will need Python 3 and Make. ### Command-line Tools On Windows We do not recommend using Windows. It is possible, however. You will need to -install `make`, Python 3, and Java 14. You can do this on native Windows. +install `make`, Python 3, and Java 17. You can do this on native Windows. However, installing a Windows Subsystem for Linux will make installing and running the command-line tools much easier (though it will potentially make running the visual debugger more difficult depending on your version of Windows and WSL; see below). -If you install WSL, you can install `python3`, `java14`, and `make` through +If you install WSL, you can install `python3`, `java17`, and `make` through `apt-get`. You will still need to install Java directly on Windows, though, for IntelliJ. (This will result in two installations of Java.)