Add module-info.java for standard Kotlin libraries

Using the new multi-release jar feature, store compiled
module-info.class files into META-INF/versions/9 instead of the artifact
root. Hopefully, this will break fewer tools which do not support
module-info.class files because any sane tool should not do anything
with files in META-INF because before Java 9 that directory only
contained resources.

Upgrade some Maven plugins to newer versions which do not fail on
module-info.class files

 #KT-21266 In Progress
This commit is contained in:
Alexander Udalov
2017-08-29 11:02:45 +03:00
parent 650e97f200
commit 2d41c7d462
15 changed files with 140 additions and 19 deletions
@@ -32,11 +32,10 @@ class TestStdlibWithDxTest {
}
private fun doTest(file: File) {
val zip = ZipInputStream(FileInputStream(file))
zip.use {
generateSequence { zip.nextEntry }.forEach {
if (it.name.endsWith(".class")) {
DxChecker.checkFileWithDx(zip.readBytes(), it.name)
ZipInputStream(FileInputStream(file)).use { zip ->
for (entry in generateSequence { zip.nextEntry }) {
if (entry.name.endsWith(".class") && !entry.name.startsWith("META-INF/")) {
DxChecker.checkFileWithDx(zip.readBytes(), entry.name)
}
}
}