Build java9 modular artifacts under 'modular' classifier
Provide additional modular artifacts as a workaround for KT-21266 Update module-info declarations: - add new packages - add exports and opens for internal PlatformImplementations - remove exports of kotlin.coroutines.experimental.* #KT-27919 Fixed
This commit is contained in:
@@ -41,14 +41,25 @@ sourceSets {
|
||||
}
|
||||
|
||||
jar {
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
manifestAttributes(manifest, project, 'Main' /*true*/)
|
||||
// TODO: enable as soon as this doesn't cause D8/DX to crash
|
||||
// from sourceSets.java9.output
|
||||
}
|
||||
|
||||
task modularJar(type: Jar) {
|
||||
dependsOn(jar)
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
classifier = 'modular'
|
||||
|
||||
from zipTree(jar.outputs.files.singleFile)
|
||||
from sourceSets.java9.output
|
||||
}
|
||||
|
||||
|
||||
artifacts {
|
||||
archives sourcesJar
|
||||
archives javadocJar
|
||||
archives modularJar
|
||||
}
|
||||
|
||||
dist {
|
||||
|
||||
@@ -2,4 +2,7 @@ module kotlin.stdlib.jdk7 {
|
||||
requires transitive kotlin.stdlib;
|
||||
|
||||
exports kotlin.jdk7;
|
||||
|
||||
exports kotlin.internal.jdk7 to kotlin.stdlib.jdk8;
|
||||
opens kotlin.internal.jdk7 to kotlin.stdlib;
|
||||
}
|
||||
|
||||
@@ -44,14 +44,25 @@ sourceSets {
|
||||
}
|
||||
|
||||
jar {
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
manifestAttributes(manifest, project, 'Main' /*true*/)
|
||||
// TODO: enable as soon as this doesn't cause D8/DX to crash
|
||||
// from sourceSets.java9.output
|
||||
}
|
||||
|
||||
task modularJar(type: Jar) {
|
||||
dependsOn(jar)
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
classifier = 'modular'
|
||||
|
||||
from zipTree(jar.outputs.files.singleFile)
|
||||
from sourceSets.java9.output
|
||||
}
|
||||
|
||||
|
||||
artifacts {
|
||||
archives sourcesJar
|
||||
archives javadocJar
|
||||
archives modularJar
|
||||
}
|
||||
|
||||
dist {
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
module kotlin.stdlib.jdk8 {
|
||||
requires transitive kotlin.stdlib;
|
||||
requires kotlin.stdlib.jdk7;
|
||||
|
||||
exports kotlin.collections.jdk8;
|
||||
exports kotlin.streams.jdk8;
|
||||
exports kotlin.text.jdk8;
|
||||
|
||||
opens kotlin.internal.jdk8 to kotlin.stdlib;
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ dependencies {
|
||||
}
|
||||
|
||||
jar {
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
manifestAttributes(manifest, project, 'Main' /*true*/)
|
||||
from("${rootDir}/dist/builtins")
|
||||
from sourceSets.experimental.output
|
||||
from sourceSets.coroutines.output
|
||||
@@ -85,14 +85,14 @@ jar {
|
||||
task coroutinesJar(type: Jar) {
|
||||
version = null
|
||||
classifier = 'coroutines'
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
manifestAttributes(manifest, project, 'Main')
|
||||
project.configure(manifest) { attributes 'Kotlin-Version': '1.3' }
|
||||
}
|
||||
|
||||
task unsignedJar(type: Jar) {
|
||||
version = null
|
||||
classifier = 'unsigned'
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
manifestAttributes(manifest, project, 'Main')
|
||||
project.configure(manifest) { attributes 'Kotlin-Version': '1.3' }
|
||||
}
|
||||
|
||||
@@ -122,9 +122,19 @@ task distMavenSources(type: Copy) {
|
||||
rename "-${java.util.regex.Pattern.quote(version)}", ''
|
||||
}
|
||||
|
||||
task modularJar(type: Jar) {
|
||||
dependsOn(jar)
|
||||
manifestAttributes(manifest, project, 'Main', true)
|
||||
classifier = 'modular'
|
||||
|
||||
from zipTree(jar.outputs.files.singleFile)
|
||||
from sourceSets.java9.output
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives sourcesJar
|
||||
archives javadocJar
|
||||
archives modularJar
|
||||
}
|
||||
|
||||
dist {
|
||||
@@ -189,7 +199,7 @@ compileExperimentalKotlin {
|
||||
}
|
||||
}
|
||||
|
||||
compileJava9Sources(project, 'kotlin.stdlib')
|
||||
compileJava9Sources(project, 'kotlin.stdlib', [sourceSets.main.output, sourceSets.coroutines.output])
|
||||
|
||||
compileCoroutinesKotlin {
|
||||
kotlinOptions {
|
||||
|
||||
@@ -4,33 +4,39 @@ module kotlin.stdlib {
|
||||
exports kotlin.collections;
|
||||
exports kotlin.comparisons;
|
||||
exports kotlin.concurrent;
|
||||
exports kotlin.contracts;
|
||||
exports kotlin.coroutines;
|
||||
exports kotlin.coroutines.intrinsics;
|
||||
exports kotlin.coroutines.jvm.internal;
|
||||
exports kotlin.io;
|
||||
exports kotlin.jvm;
|
||||
exports kotlin.jvm.functions;
|
||||
exports kotlin.math;
|
||||
exports kotlin.properties;
|
||||
exports kotlin.random;
|
||||
exports kotlin.ranges;
|
||||
exports kotlin.reflect;
|
||||
exports kotlin.sequences;
|
||||
exports kotlin.system;
|
||||
exports kotlin.text;
|
||||
|
||||
exports kotlin.coroutines.experimental;
|
||||
exports kotlin.coroutines.experimental.intrinsics;
|
||||
exports kotlin.coroutines.experimental.jvm.internal;
|
||||
// do not export experimental coroutines packages
|
||||
//exports kotlin.coroutines.experimental;
|
||||
//exports kotlin.coroutines.experimental.intrinsics;
|
||||
//exports kotlin.coroutines.experimental.jvm.internal;
|
||||
//exports kotlin.coroutines.experimental.migration;
|
||||
|
||||
exports kotlin.experimental;
|
||||
|
||||
exports kotlin.internal;
|
||||
exports kotlin.jvm.internal;
|
||||
exports kotlin.jvm.internal.markers;
|
||||
|
||||
// TODO?
|
||||
// exports org.jetbrains.annotations;
|
||||
|
||||
// Open packages with .kotlin_builtins files to kotlin-reflect, to allow reflection to load built-in declarations there
|
||||
opens kotlin to kotlin.reflect;
|
||||
opens kotlin.annotation to kotlin.reflect;
|
||||
opens kotlin.collections to kotlin.reflect;
|
||||
opens kotlin.coroutines to kotlin.reflect;
|
||||
opens kotlin.internal to kotlin.reflect;
|
||||
opens kotlin.ranges to kotlin.reflect;
|
||||
opens kotlin.reflect to kotlin.reflect;
|
||||
|
||||
Reference in New Issue
Block a user