Skip to content

Commit

Permalink
[all] Enabling the support of JDK 12, 13 and 14 for the SARL users.
Browse files Browse the repository at this point in the history
JDK 12 to 14 could be used for running the SARL maven compiler and the
sarlc compiler.

see #955

Signed-off-by: Stéphane Galland <galland@arakhne.org>
  • Loading branch information
gallandarakhneorg committed Oct 12, 2020
1 parent 972a123 commit b656b88
Show file tree
Hide file tree
Showing 13 changed files with 710 additions and 12 deletions.
Expand Up @@ -95,7 +95,7 @@ public final class SARLVersion {
*
* @since 0.10
*/
public static final String INCOMPATIBLE_JDK_VERSION_FOR_SARL_COMPILATION_ENVIRONMENT = "12"; //$NON-NLS-1$
public static final String INCOMPATIBLE_JDK_VERSION_FOR_SARL_COMPILATION_ENVIRONMENT = "15"; //$NON-NLS-1$

/** The minimal version of the JDK that must be used on the classpath of SARL projects.
*
Expand All @@ -107,7 +107,7 @@ public final class SARLVersion {
*
* @since 0.10
*/
public static final String INCOMPATIBLE_JDK_VERSION_IN_SARL_PROJECT_CLASSPATH = "12"; //$NON-NLS-1$
public static final String INCOMPATIBLE_JDK_VERSION_IN_SARL_PROJECT_CLASSPATH = "15"; //$NON-NLS-1$

private SARLVersion() {
//
Expand Down
20 changes: 13 additions & 7 deletions pom.xml
Expand Up @@ -32,20 +32,26 @@
<sarl-dsl.next.unsupported.jdk.version>1.9</sarl-dsl.next.unsupported.jdk.version>

<!-- Java Configuration for running the SARL tools (IDE, sarlc, sarldoc...):
*********** * CAUTION * *********** The versions below must include the versions
***********
* CAUTION *
***********
The versions below must include the versions
for the properties "sarl-dsl.*" -->
<sarl-run.min.jdk.version>1.8</sarl-run.min.jdk.version>
<sarl-run.min.jre.environment>JavaSE-${sarl-run.min.jdk.version}</sarl-run.min.jre.environment>
<sarl-run.max.jdk.version>11</sarl-run.max.jdk.version>
<sarl-run.next.unsupported.jdk.version>12</sarl-run.next.unsupported.jdk.version>
<sarl-run.max.jdk.version>14</sarl-run.max.jdk.version>
<sarl-run.next.unsupported.jdk.version>15</sarl-run.next.unsupported.jdk.version>

<!-- Java Configuration that should be used by the projects compiled with
SARL IDE or sarlc: *********** * CAUTION * *********** The versions below
must include the versions for the properties "sarl-run.*" -->
SARL IDE or sarlc:
***********
* CAUTION *
***********
The versions below must include the versions for the properties "sarl-run.*" -->
<user.min.jdk.version>1.8</user.min.jdk.version>
<user.min.jre.environment>JavaSE-${user.min.jdk.version}</user.min.jre.environment>
<user.max.jdk.version>11</user.max.jdk.version>
<user.next.unsupported.jdk.version>12</user.next.unsupported.jdk.version>
<user.max.jdk.version>14</user.max.jdk.version>
<user.next.unsupported.jdk.version>15</user.next.unsupported.jdk.version>

<!-- Version of the SARL API -->
<sarl.version>0.12.0-SNAPSHOT</sarl.version>
Expand Down
102 changes: 102 additions & 0 deletions tests/crossplatform.tests/pom.xml
@@ -0,0 +1,102 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>io.sarl</groupId>
<artifactId>io.sarl.tests</artifactId>
<version>0.12.0-SNAPSHOT</version>
</parent>

<artifactId>crossplatform.tests</artifactId>
<name>Tests of SARL on different JDK</name>

<dependencies>
<dependency>
<groupId>io.sarl.maven</groupId>
<artifactId>sarl-maven-plugin</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.sarl.lang</groupId>
<artifactId>io.sarl.lang.core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.sarl.lang</groupId>
<artifactId>io.sarl.lang</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-verifier</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<executions>
<execution>
<id>prepare-test-resources</id>
<phase>generate-test-resources</phase>
<goals>
<goal>replace</goal>
</goals>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<basedir>${project.basedir}/test-resource-templates</basedir>
<includes>
<include>*/**/pom.xml</include>
</includes>
<outputBasedir>${project.basedir}</outputBasedir>
<outputDir>src/test/resources/</outputDir>
</configuration>
</execution>
</executions>
<configuration>
<replacements>
<replacement>
<token>%javaversion%</token>
<value>${sarl-dsl.min.jdk.version}</value>
</replacement>
<replacement>
<token>%fileencoding%</token>
<value>${project.build.sourceEncoding}</value>
</replacement>
<replacement>
<token>%sarlreleaseversion%</token>
<value>${sarl.version}</value>
</replacement>
<replacement>
<token>%janusreleaseversion%</token>
<value>${janus.version}</value>
</replacement>
<replacement>
<token>%mavencompilerversion%</token>
<value>${mavencompiler.version}</value>
</replacement>
</replacements>
</configuration>
</plugin>
</plugins>
</build>

</project>

0 comments on commit b656b88

Please sign in to comment.