Create new artifacts for standard library extensions for JRE7 and JRE8.

Set default JDK for kotlin compiler plugin.
Set default JRE path for maven surefire plugin.
Run tests for extension modules on the corresponding JRE.
#KT-8254
This commit is contained in:
Ilya Gorbunov
2016-06-15 20:51:48 +03:00
parent 17e7c269ad
commit d6261521ff
4 changed files with 214 additions and 1 deletions
+4
View File
@@ -50,6 +50,7 @@
<kotlin-dist>${project-root}/dist</kotlin-dist>
<kotlin-sdk>${kotlin-dist}/kotlinc</kotlin-sdk>
<kotlin.compiler.jdkHome>${env.JDK_16}</kotlin.compiler.jdkHome>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
@@ -79,6 +80,8 @@
<module>tools/runtime</module>
<module>stdlib</module>
<module>stdlib/jre7</module>
<module>stdlib/jre8</module>
<module>tools/kotlin-reflect</module>
<module>tools/kotlin-osgi-bundle</module>
@@ -161,6 +164,7 @@
<version>${surefire-version}</version>
<configuration>
<forkMode>once</forkMode>
<jvm>${env.JDK_16}/bin/java</jvm>
<useSystemClassLoader>false</useSystemClassLoader>
<useManifestOnlyJar>false</useManifestOnlyJar>
<failIfNoTests>false</failIfNoTests>
+101
View File
@@ -0,0 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-project</artifactId>
<version>1.1-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<artifactId>kotlin-stdlib-jre7</artifactId>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-test-junit</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${project.version}</version>
<configuration>
<jdkHome>${env.JDK_17}</jdkHome>
<args>
<arg>-Xallow-kotlin-package</arg>
</args>
</configuration>
<executions>
<execution>
<id>compile</id>
<phase>process-sources</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<args combine.children="append">
<arg>-Xmultifile-parts-inherit</arg>
<arg>-Xdump-declarations-to</arg>
<arg>${basedir}/target/stdlib-jre7-declarations.json</arg>
</args>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${basedir}/test</sourceDir>
<sourceDir>${basedir}/../test</sourceDir>
</sourceDirs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>once</forkMode>
<jvm>${env.JDK_17}/bin/java</jvm>
</configuration>
<executions>
<execution>
<id>binary-compatibility-test</id>
<goals> <goal>test</goal> </goals>
<phase>test</phase>
<configuration>
<testSourceDirectory>${basedir}/../test</testSourceDirectory>
<testClassesDirectory>${basedir}/../target/test-classes</testClassesDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
+101
View File
@@ -0,0 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-project</artifactId>
<version>1.1-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<artifactId>kotlin-stdlib-jre8</artifactId>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-jre7</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-test-junit</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${project.version}</version>
<configuration>
<jdkHome>${env.JDK_18}</jdkHome>
<args>
<arg>-Xallow-kotlin-package</arg>
</args>
</configuration>
<executions>
<execution>
<id>compile</id>
<phase>process-sources</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<args combine.children="append">
<arg>-Xmultifile-parts-inherit</arg>
<arg>-Xdump-declarations-to</arg>
<arg>${basedir}/target/stdlib-jre8-declarations.json</arg>
</args>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${basedir}/test</sourceDir>
<sourceDir>${basedir}/../jdk7/test</sourceDir>
<sourceDir>${basedir}/../test</sourceDir>
</sourceDirs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>once</forkMode>
<jvm>${env.JDK_18}/bin/java</jvm>
</configuration>
<executions>
<execution>
<id>binary-compatibility-test</id>
<goals> <goal>test</goal> </goals>
<phase>test</phase>
<configuration>
<testSourceDirectory>${basedir}/../test</testSourceDirectory>
<testClassesDirectory>${basedir}/../target/test-classes</testClassesDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
+8 -1
View File
@@ -32,7 +32,7 @@
<testSourceDirectory>test</testSourceDirectory>
<plugins>
<plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${project.version}</version>
@@ -68,6 +68,13 @@
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>once</forkMode>
<jvm>${env.JDK_16}/bin/java</jvm>
</configuration>
</plugin>
</plugins>
</build>
</project>