Skip to content

Commit

Permalink
Merge pull request #2820 from jamezp/RESTEASY-2907
Browse files Browse the repository at this point in the history
Require a minimum of Java 11 for compiling
  • Loading branch information
jamezp committed Jun 8, 2021
2 parents 6daf024 + d04c80e commit 4ffafdc
Show file tree
Hide file tree
Showing 27 changed files with 455 additions and 540 deletions.
94 changes: 81 additions & 13 deletions .github/workflows/maven.yml
Expand Up @@ -15,13 +15,13 @@ jobs:
build:

runs-on: ${{ matrix.os }}
timeout-minutes: 60
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest ]
java: ['1.8', '11']
wildfly-version: ['22.0.1.Final', '23.0.2.Final']
java: ['11', '16']
wildfly-version: ['23.0.2.Final']

steps:
- uses: actions/checkout@v2
Expand All @@ -31,12 +31,28 @@ jobs:
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: 8
distribution: 'adopt'
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
java-version: ${{ matrix.java }}
- name: Build with Maven Java ${{ matrix.java }} on WildFly ${{ matrix.wildfly-version }}
run: mvn clean install -U -B -fae '-Dserver.version=${{ matrix.wildfly-version }}' '-Dgithub.actions'
distribution: 'adopt'
- name: Build with Maven Java ${{ matrix.java }} on WildFly ${{ matrix.wildfly-version }} - Linux
if: runner.os == 'Linux'
run: |
echo "::group::Build Logs"
mvn clean install -U -B -fae -Dserver.version=${{ matrix.wildfly-version }} -Dgithub.actions -Djava8.home="$JAVA_HOME_8_X64"
echo "::endgroup::"
- name: Build with Maven Java ${{ matrix.java }} on WildFly ${{ matrix.wildfly-version }} - Windows
if: runner.os == 'Windows'
run: |
echo "::group::Build Logs"
mvn clean install -U -B -fae '-Dserver.version=${{ matrix.wildfly-version }}' '-Dgithub.actions' '"-Djava8.home=%JAVA_HOME_8_X64%"'
echo "::endgroup::"
- uses: actions/upload-artifact@v2
if: failure()
with:
Expand All @@ -48,13 +64,65 @@ jobs:
name: server-logs-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.wildfly-version }}
path: '**/server.log'

build-java-docs:
runs-on: ubuntu-latest
timeout-minutes: 60
test-with-java8:

runs-on: ${{ matrix.os }}
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
java: ['1.8', '11']
os: [ubuntu-latest, windows-latest ]
wildfly-version: ['23.0.2.Final']

steps:
- uses: actions/checkout@v2
- uses: actions/cache@v1
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: 8
distribution: 'adopt'
- name: Set up JDK 11
uses: actions/setup-java@v2
with:
java-version: 11
distribution: 'adopt'
- name: Build with Java 11
run: |
echo "::group::Build Logs"
mvn clean install -U -B -DskipTests
echo "::endgroup::"
- name: Test with Java 8 on WildFly ${{ matrix.wildfly-version }} - Linux
if: runner.os == 'Linux'
run: |
echo "::group::Test Logs"
mvn clean install -U -B -fae -rf ':resteasy-testsuite' -Dserver.version=${{ matrix.wildfly-version }} -Dgithub.actions -Dtest.java8.home="$JAVA_HOME_8_X64"
echo "::endgroup::"
- name: Test with Java 8 on WildFly ${{ matrix.wildfly-version }} - Windows
if: runner.os == 'Windows'
run: |
echo "::group::Build Logs"
mvn clean install -U -B -fae -rf ':resteasy-testsuite' '-Dserver.version=${{ matrix.wildfly-version }}' '-Dgithub.actions' '"-Dtest.java8.home=%JAVA_HOME_8_X64%"'
echo "::endgroup::"
- uses: actions/upload-artifact@v2
if: failure()
with:
name: surefire-reports-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.wildfly-version }}
path: '**/surefire-reports/*.txt'
- uses: actions/upload-artifact@v2
if: failure()
with:
name: server-logs-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.wildfly-version }}
path: '**/server.log'

build-java-docs:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v1
Expand All @@ -63,10 +131,10 @@ jobs:
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-javadoc
- name: Set up JDK ${{ matrix.java }}
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Build Java Docs with Java ${{ matrix.java }}
java-version: 11
- name: Build Java Docs with Java 11
run: mvn clean install -U -B -DskipTests '-Dmaven.javadoc.skip=false' javadoc:javadoc

17 changes: 0 additions & 17 deletions .travis.yml

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -27,7 +27,7 @@ Issues are kept in [JIRA](https://issues.redhat.com/projects/RESTEASY/issues).

## Build

Currently RESTEasy can be built with JDK 1.8 and 11.
Currently RESTEasy can be built with JDK 11+.

If you want to purely build the project without running the tests, you need to pull down a clone of the RESTEasy repository and run:

Expand Down
Expand Up @@ -14,8 +14,8 @@
<container qualifier="jetty" default="true">
<configuration>
<property name="bindHttpPort">0</property>
<property name="javaVmArguments">${additionalJvmArgs} ${modular.jdk.args}</property>
<!--property name="javaVmArguments">${additionalJvmArgs} ${modular.jdk.args} -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y, suspend=y</property-->
<property name="javaVmArguments">${additionalJvmArgs}</property>
<!--property name="javaVmArguments">${additionalJvmArgs} -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y, suspend=y</property-->
</configuration>
</container>
</arquillian>
Expand Up @@ -14,9 +14,9 @@
<container qualifier="jetty" default="true">
<configuration>
<property name="bindHttpPort">0</property>
<property name="javaVmArguments">${additionalJvmArgs} ${modular.jdk.args}</property>
<property name="javaVmArguments">${additionalJvmArgs}</property>
<!--
<property name="javaVmArguments">${additionalJvmArgs} ${modular.jdk.args} -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y, suspend=n</property>
<property name="javaVmArguments">${additionalJvmArgs} -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y, suspend=n</property>
-->
</configuration>
</container>
Expand Down
7 changes: 0 additions & 7 deletions arquillian/RESTEASY-736-jetty/pom.xml
Expand Up @@ -20,13 +20,6 @@
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>

Expand Down
7 changes: 0 additions & 7 deletions arquillian/pom.xml
Expand Up @@ -52,13 +52,6 @@
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
Expand Down
126 changes: 65 additions & 61 deletions pom.xml
Expand Up @@ -29,17 +29,23 @@
<jboss.home/>
<!-- print logs to file by default -->
<maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
<!-- Modularized JDK support (various workarounds) - activated via profile -->
<modular.jdk.args/>
<!-- maven-enforcer-plugin -->
<maven.min.version>3.2.5</maven.min.version>
<jdk.min.version>${maven.compiler.source}</jdk.min.version>

<!-- Require at least Java 11 to compile, but compile down to Java 8 -->
<jdk.min.version>11</jdk.min.version>
<javadoc.additional.params>--release=8</javadoc.additional.params>
<!-- maven-surefire-plugin -->
<surefire.system.args>-Xms512m -Xmx512m ${modular.jdk.args}</surefire.system.args>
<surefire.system.args>-Xms512m -Xmx512m</surefire.system.args>
<skip.java8.tests>false</skip.java8.tests>

<maven.test.skip>false</maven.test.skip>
<skipTests>${maven.test.skip}</skipTests>

<!-- Plugins versions -->
<version.org.jacoco.plugin>0.7.9</version.org.jacoco.plugin>
<version.javadoc.plugin>3.0.1</version.javadoc.plugin>
<version.compiler.plugin>3.8.0-jboss-2</version.compiler.plugin>
<version.org.wildfly.plugins.wildfly-maven-plugin>2.1.0.Beta1</version.org.wildfly.plugins.wildfly-maven-plugin>
</properties>

<url>https://jboss.org/resteasy</url>
Expand Down Expand Up @@ -140,49 +146,40 @@
</dependencies>
</dependencyManagement>
</profile>
<profile>
<id>travis</id>
<activation>
<property>
<name>travis</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<!-- default test execution -->
<execution>
<id>default-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<!--Temporarily exclude the tests only failed on Travis-->
<excludes combine.children="append">
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>modular.jvm</id>
<id>java8.tests</id>
<activation>
<jdk>[9,)</jdk>
<property>
<name>java8.home</name>
</property>
</activation>
<properties>
<modular.jdk.args>
--add-exports=java.base/sun.nio.ch=ALL-UNNAMED
--add-modules=java.se
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.security=ALL-UNNAMED
</modular.jdk.args>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<id>java8-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>${skip.java8.tests}</skip>
<jvm>${java8.home}/bin/java</jvm>
<additionalClasspathElements>
<additionalClasspathElement>${java8.home}/lib/tools.jar</additionalClasspathElement>
</additionalClasspathElements>
<environmentVariables>
<JAVA_HOME>${java8.home}</JAVA_HOME>
</environmentVariables>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>github-actions</id>
Expand Down Expand Up @@ -244,6 +241,22 @@
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>default-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<release>8</release>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
Expand All @@ -257,9 +270,8 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${version.javadoc.plugin}</version>
<configuration>
<source>8</source>
<doclint>none</doclint>
<minmemory>128m</minmemory>
<maxmemory>1024m</maxmemory>
<quiet>false</quiet>
Expand Down Expand Up @@ -287,6 +299,12 @@
<artifactId>jacoco-maven-plugin</artifactId>
<version>${version.org.jacoco.plugin}</version>
</plugin>

<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>${version.org.wildfly.plugins.wildfly-maven-plugin}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
Expand Down Expand Up @@ -386,20 +404,6 @@
</rules>
</configuration>
</execution>
<execution>
<id>use-java-8-for-release</id>
<phase>deploy</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>[1.8,9)</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
Expand Down

0 comments on commit 4ffafdc

Please sign in to comment.