Move importsDumper to compiler plugin

This commit is contained in:
Dmitry Savvinov
2018-05-16 16:25:29 +03:00
parent 16ee2df585
commit da7b59984f
32 changed files with 136 additions and 70 deletions
-1
View File
@@ -141,7 +141,6 @@ extra["versions.javaslang"] = "2.0.6"
extra["versions.ant"] = "1.8.2" extra["versions.ant"] = "1.8.2"
extra["versions.android"] = "2.3.1" extra["versions.android"] = "2.3.1"
extra["versions.kotlinx-coroutines-core"] = "0.20" extra["versions.kotlinx-coroutines-core"] = "0.20"
extra["versions.kotlinx-serialization-runtime"] = "0.4.2"
extra["versions.kotlinx-coroutines-jdk8"] = "0.20" extra["versions.kotlinx-coroutines-jdk8"] = "0.20"
extra["versions.json"] = "20160807" extra["versions.json"] = "20160807"
extra["versions.native-platform"] = "0.14" extra["versions.native-platform"] = "0.14"
-1
View File
@@ -141,7 +141,6 @@ extra["versions.javaslang"] = "2.0.6"
extra["versions.ant"] = "1.8.2" extra["versions.ant"] = "1.8.2"
extra["versions.android"] = "2.3.1" extra["versions.android"] = "2.3.1"
extra["versions.kotlinx-coroutines-core"] = "0.20" extra["versions.kotlinx-coroutines-core"] = "0.20"
extra["versions.kotlinx-serialization-runtime"] = "0.4.2"
extra["versions.kotlinx-coroutines-jdk8"] = "0.20" extra["versions.kotlinx-coroutines-jdk8"] = "0.20"
extra["versions.json"] = "20160807" extra["versions.json"] = "20160807"
extra["versions.native-platform"] = "0.14" extra["versions.native-platform"] = "0.14"
-1
View File
@@ -20,7 +20,6 @@ dependencies {
compile(project(":js:js.translator")) compile(project(":js:js.translator"))
compile(project(":js:js.serializer")) compile(project(":js:js.serializer"))
compile(project(":js:js.dce")) compile(project(":js:js.dce"))
compile(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
compile(commonDep("org.fusesource.jansi", "jansi")) compile(commonDep("org.fusesource.jansi", "jansi"))
compile(commonDep("org.jline", "jline")) compile(commonDep("org.jline", "jline"))
compile(files("${System.getProperty("java.home")}/../lib/tools.jar")) compile(files("${System.getProperty("java.home")}/../lib/tools.jar"))
@@ -222,13 +222,6 @@ class K2JVMCompilerArguments : CommonCompilerArguments() {
) )
var noExceptionOnExplicitEqualsForBoxedNull by FreezableVar(false) var noExceptionOnExplicitEqualsForBoxedNull by FreezableVar(false)
@Argument(
value = "-Xoutput-imports",
valueDescription = "<path>",
description = "Output imports from all compiled files to the specified file in JSON format"
)
var outputImports: String? by FreezableVar(null)
@Argument(value = "-Xenable-jvm-default", description = "Allow to use '@JvmDefault' for JVM default method support") @Argument(value = "-Xenable-jvm-default", description = "Allow to use '@JvmDefault' for JVM default method support")
var enableJvmDefault: Boolean by FreezableVar(false) var enableJvmDefault: Boolean by FreezableVar(false)
@@ -23,7 +23,10 @@ import org.jetbrains.kotlin.cli.common.ExitCode.*
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
import org.jetbrains.kotlin.cli.common.messages.* import org.jetbrains.kotlin.cli.common.messages.*
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity.* import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity.*
import org.jetbrains.kotlin.cli.jvm.compiler.* import org.jetbrains.kotlin.cli.jvm.compiler.CompileEnvironmentUtil
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler
import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot import org.jetbrains.kotlin.cli.jvm.config.JvmClasspathRoot
import org.jetbrains.kotlin.cli.jvm.config.JvmModulePathRoot import org.jetbrains.kotlin.cli.jvm.config.JvmModulePathRoot
import org.jetbrains.kotlin.cli.jvm.config.addJavaSourceRoot import org.jetbrains.kotlin.cli.jvm.config.addJavaSourceRoot
@@ -31,7 +34,6 @@ import org.jetbrains.kotlin.cli.jvm.modules.CoreJrtFileSystem
import org.jetbrains.kotlin.cli.jvm.plugins.PluginCliParser import org.jetbrains.kotlin.cli.jvm.plugins.PluginCliParser
import org.jetbrains.kotlin.cli.jvm.repl.ReplFromTerminal import org.jetbrains.kotlin.cli.jvm.repl.ReplFromTerminal
import org.jetbrains.kotlin.codegen.CompilationException import org.jetbrains.kotlin.codegen.CompilationException
import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar
import org.jetbrains.kotlin.config.* import org.jetbrains.kotlin.config.*
import org.jetbrains.kotlin.incremental.components.ExpectActualTracker import org.jetbrains.kotlin.incremental.components.ExpectActualTracker
import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.incremental.components.LookupTracker
@@ -390,11 +392,6 @@ class K2JVMCompiler : CLICompiler<K2JVMCompilerArguments>() {
configuration.put(JVMConfigurationKeys.ADD_BUILT_INS_FROM_COMPILER_TO_DEPENDENCIES, arguments.addCompilerBuiltIns) configuration.put(JVMConfigurationKeys.ADD_BUILT_INS_FROM_COMPILER_TO_DEPENDENCIES, arguments.addCompilerBuiltIns)
configuration.put(JVMConfigurationKeys.CREATE_BUILT_INS_FROM_MODULE_DEPENDENCIES, arguments.loadBuiltInsFromDependencies) configuration.put(JVMConfigurationKeys.CREATE_BUILT_INS_FROM_MODULE_DEPENDENCIES, arguments.loadBuiltInsFromDependencies)
if (arguments.outputImports != null) {
configuration.put(JVMConfigurationKeys.OUTPUT_IMPORTS, arguments.outputImports!!)
configuration.add(ComponentRegistrar.PLUGIN_COMPONENT_REGISTRARS, ImportsProducerComponentRegistrar())
}
arguments.declarationsOutputPath?.let { configuration.put(JVMConfigurationKeys.DECLARATIONS_JSON_PATH, it) } arguments.declarationsOutputPath?.let { configuration.put(JVMConfigurationKeys.DECLARATIONS_JSON_PATH, it) }
} }
-3
View File
@@ -219,7 +219,4 @@ messages/**)
# remove when KT-18563 would be fixed # remove when KT-18563 would be fixed
-keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; } -keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; }
# for imports dumper in compiler
-keep class kotlinx.serialization.** { *; }
-keep class net.jpountz.lz4.* { *; } -keep class net.jpountz.lz4.* { *; }
-3
View File
@@ -215,6 +215,3 @@ messages/**)
# remove when KT-18563 would be fixed # remove when KT-18563 would be fixed
-keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; } -keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; }
# for imports dumper in compiler
-keep class kotlinx.serialization.** { *; }
-3
View File
@@ -223,7 +223,4 @@ messages/**)
# remove when KT-18563 would be fixed # remove when KT-18563 would be fixed
-keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; } -keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; }
# for imports dumper in compiler
-keep class kotlinx.serialization.** { *; }
-keep class net.jpountz.lz4.* { *; } -keep class net.jpountz.lz4.* { *; }
-3
View File
@@ -219,6 +219,3 @@ messages/**)
# remove when KT-18563 would be fixed # remove when KT-18563 would be fixed
-keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; } -keep class org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt { *; }
# for imports dumper in compiler
-keep class kotlinx.serialization.** { *; }
@@ -139,9 +139,6 @@ public class JVMConfigurationKeys {
public static final CompilerConfigurationKey<List<String>> ADDITIONAL_JAVA_MODULES = public static final CompilerConfigurationKey<List<String>> ADDITIONAL_JAVA_MODULES =
CompilerConfigurationKey.create("additional Java modules"); CompilerConfigurationKey.create("additional Java modules");
public static final CompilerConfigurationKey<String> OUTPUT_IMPORTS =
CompilerConfigurationKey.create("output imports");
public static final CompilerConfigurationKey<Boolean> ENABLE_JVM_DEFAULT = public static final CompilerConfigurationKey<Boolean> ENABLE_JVM_DEFAULT =
CompilerConfigurationKey.create("Allow to use '@JvmDefault'"); CompilerConfigurationKey.create("Allow to use '@JvmDefault'");
} }
-1
View File
@@ -39,7 +39,6 @@ where advanced options include:
-Xno-optimize Disable optimizations -Xno-optimize Disable optimizations
-Xno-param-assertions Don't generate not-null assertions on parameters of methods accessible from Java -Xno-param-assertions Don't generate not-null assertions on parameters of methods accessible from Java
-Xno-receiver-assertions Don't generate not-null assertion for extension receiver arguments of platform types -Xno-receiver-assertions Don't generate not-null assertion for extension receiver arguments of platform types
-Xoutput-imports=<path> Output imports from all compiled files to the specified file in JSON format
-Xscript-resolver-environment=<key=value[,]> -Xscript-resolver-environment=<key=value[,]>
Script resolver environment in key-value pairs (the value could be quoted and escaped) Script resolver environment in key-value pairs (the value could be quoted and escaped)
-Xsingle-module Combine modules for source files and binary dependencies into a single module -Xsingle-module Combine modules for source files and binary dependencies into a single module
-1
View File
@@ -24,7 +24,6 @@ dependencies {
fatJarContents(commonDep("com.google.code.findbugs", "jsr305")) fatJarContents(commonDep("com.google.code.findbugs", "jsr305"))
fatJarContents(commonDep("io.javaslang", "javaslang")) fatJarContents(commonDep("io.javaslang", "javaslang"))
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false } fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
fatJarContents(intellijCoreDep()) { includeJars("intellij-core") } fatJarContents(intellijCoreDep()) { includeJars("intellij-core") }
fatJarContents(intellijDep()) { includeIntellijCoreJarDependencies(project, { !(it.startsWith("jdom") || it.startsWith("log4j")) }) } fatJarContents(intellijDep()) { includeIntellijCoreJarDependencies(project, { !(it.startsWith("jdom") || it.startsWith("log4j")) }) }
@@ -24,7 +24,6 @@ dependencies {
fatJarContents(commonDep("com.google.code.findbugs", "jsr305")) fatJarContents(commonDep("com.google.code.findbugs", "jsr305"))
fatJarContents(commonDep("io.javaslang", "javaslang")) fatJarContents(commonDep("io.javaslang", "javaslang"))
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false } fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
fatJarContents(intellijCoreDep()) { includeJars("intellij-core") } fatJarContents(intellijCoreDep()) { includeJars("intellij-core") }
fatJarContents(intellijDep()) { includeIntellijCoreJarDependencies(project, { !(it.startsWith("jdom") || it.startsWith("log4j")) }) } fatJarContents(intellijDep()) { includeIntellijCoreJarDependencies(project, { !(it.startsWith("jdom") || it.startsWith("log4j")) }) }
+39
View File
@@ -0,0 +1,39 @@
description = "Extension for saving imports of .kt-files in JSON"
plugins {
kotlin("jvm")
id("jps-compatible")
}
val kotlinxSerializationVersion = "0.4.2"
dependencies {
compile(project(":compiler:frontend.java"))
compile(project(":compiler:plugin-api"))
compileOnly("org.jetbrains.kotlinx", "kotlinx-serialization-runtime", kotlinxSerializationVersion) { isTransitive = false }
compile(intellijCoreDep()) { includeJars("intellij-core") }
testCompile(project(":compiler:tests-common"))
testCompile(projectTests(":compiler:tests-common"))
embeddedComponents("org.jetbrains.kotlinx", "kotlinx-serialization-runtime", kotlinxSerializationVersion) { isTransitive = false }
}
sourceSets {
"main" { projectDefault() }
"test" { projectDefault() }
}
projectTest {
workingDir = rootDir
dependsOn(":dist")
}
runtimeJar {
fromEmbeddedComponents()
}
dist()
@@ -0,0 +1,6 @@
#
# Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
# that can be found in the license/LICENSE.txt file.
#
org.jetbrains.kotlin.importsDumper.ImportsDumperCommandLineProcessor
@@ -0,0 +1,6 @@
#
# Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
# that can be found in the license/LICENSE.txt file.
#
org.jetbrains.kotlin.importsDumper.ImportsDumperComponentRegistrar
@@ -0,0 +1,42 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.importsDumper
import org.jetbrains.kotlin.compiler.plugin.CliOption
import org.jetbrains.kotlin.compiler.plugin.CliOptionProcessingException
import org.jetbrains.kotlin.compiler.plugin.CommandLineProcessor
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.config.CompilerConfigurationKey
object ImportsDumperCliOptions {
val DESTINATION = CliOption(
name = "output-imports",
valueDescription = "<path>",
description = "Output imports from all compiled files to the specified file in JSON format",
required = false // non-required because importsDumper is a bundled plugin
)
}
object ImportsDumperConfigurationKeys {
val DESTINATION = CompilerConfigurationKey.create<String>("Destination of imports dump")
}
class ImportsDumperCommandLineProcessor : CommandLineProcessor {
override val pluginId: String = PLUGIN_ID
override val pluginOptions: Collection<CliOption> = listOf(ImportsDumperCliOptions.DESTINATION)
override fun processOption(option: CliOption, value: String, configuration: CompilerConfiguration) {
when (option) {
ImportsDumperCliOptions.DESTINATION -> configuration.put(ImportsDumperConfigurationKeys.DESTINATION, value)
else -> throw CliOptionProcessingException("Unknown option: ${option.name}")
}
}
companion object {
const val PLUGIN_ID = "org.jetbrains.kotlin.importsDumper"
}
}
@@ -0,0 +1,18 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.importsDumper
import com.intellij.mock.MockProject
import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.resolve.jvm.extensions.AnalysisHandlerExtension
class ImportsDumperComponentRegistrar : ComponentRegistrar {
override fun registerProjectComponents(project: MockProject, configuration: CompilerConfiguration) {
val destinationPath = configuration[ImportsDumperConfigurationKeys.DESTINATION] ?: return
AnalysisHandlerExtension.registerExtension(project, ImportsDumperExtension(destinationPath))
}
}
@@ -3,18 +3,14 @@
* that can be found in the license/LICENSE.txt file. * that can be found in the license/LICENSE.txt file.
*/ */
package org.jetbrains.kotlin.cli.jvm.compiler package org.jetbrains.kotlin.importsDumper
import com.intellij.mock.MockProject
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import kotlinx.serialization.internal.StringSerializer import kotlinx.serialization.internal.StringSerializer
import kotlinx.serialization.json.JSON import kotlinx.serialization.json.JSON
import kotlinx.serialization.list import kotlinx.serialization.list
import kotlinx.serialization.map import kotlinx.serialization.map
import org.jetbrains.kotlin.analyzer.AnalysisResult import org.jetbrains.kotlin.analyzer.AnalysisResult
import org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.kotlin.config.JVMConfigurationKeys
import org.jetbrains.kotlin.container.ComponentProvider import org.jetbrains.kotlin.container.ComponentProvider
import org.jetbrains.kotlin.context.ProjectContext import org.jetbrains.kotlin.context.ProjectContext
import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.ModuleDescriptor
@@ -23,14 +19,7 @@ import org.jetbrains.kotlin.resolve.BindingTrace
import org.jetbrains.kotlin.resolve.jvm.extensions.AnalysisHandlerExtension import org.jetbrains.kotlin.resolve.jvm.extensions.AnalysisHandlerExtension
import java.io.File import java.io.File
class ImportsProducerComponentRegistrar : ComponentRegistrar { class ImportsDumperExtension(destinationPath: String) : AnalysisHandlerExtension {
override fun registerProjectComponents(project: MockProject, configuration: CompilerConfiguration) {
val destinationPath = configuration[JVMConfigurationKeys.OUTPUT_IMPORTS] ?: return
AnalysisHandlerExtension.registerExtension(project, ImportsProducerExtension(destinationPath))
}
}
class ImportsProducerExtension(destinationPath: String) : AnalysisHandlerExtension {
private val destination: File = File(destinationPath) private val destination: File = File(destinationPath)
override fun doAnalysis( override fun doAnalysis(
@@ -3,29 +3,27 @@
* that can be found in the license/LICENSE.txt file. * that can be found in the license/LICENSE.txt file.
*/ */
package org.jetbrains.kotlin.cli package org.jetbrains.kotlin.importsDumper
import com.intellij.openapi.util.io.FileUtil import com.intellij.openapi.util.io.FileUtil
import com.intellij.testFramework.TestDataPath import com.intellij.testFramework.TestDataPath
import junit.framework.TestCase import junit.framework.TestCase
import org.jetbrains.kotlin.cli.AbstractCliTest.* import org.jetbrains.kotlin.cli.AbstractCliTest.*
import org.jetbrains.kotlin.cli.common.ExitCode
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
import org.jetbrains.kotlin.test.KotlinTestUtils import org.jetbrains.kotlin.test.KotlinTestUtils
import org.jetbrains.kotlin.test.TestCaseWithTmpdir import org.jetbrains.kotlin.test.TestCaseWithTmpdir
import org.jetbrains.kotlin.test.TestMetadata import org.jetbrains.kotlin.test.TestMetadata
import java.io.File import java.io.File
@TestMetadata("compiler/testData/importsProducer") @TestMetadata("plugins/imports-dumper/testData")
@TestDataPath("\$PROJECT_ROOT") @TestDataPath("\$PROJECT_ROOT")
class ImportsProducerTest : TestCaseWithTmpdir() { class ImportsDumperTest : TestCaseWithTmpdir() {
@TestMetadata("simpleCase/importsProducer.args") fun testSimple() {
fun testImportsProducer() { doTest("plugins/imports-dumper/testData/simpleCase")
doTest("compiler/testData/importsProducer/simpleCase")
} }
fun doTest(testDataDirPath: String) { private fun doTest(testDataDirPath: String) {
System.setProperty("java.awt.headless", "true") System.setProperty("java.awt.headless", "true")
val testDataDir = File(testDataDirPath) val testDataDir = File(testDataDirPath)
val expectedDumpFile = testDataDir.resolve(testDataDir.name + ".dump") val expectedDumpFile = testDataDir.resolve(testDataDir.name + ".dump")
@@ -33,7 +31,7 @@ class ImportsProducerTest : TestCaseWithTmpdir() {
val actualDumpFile = tmpdir.resolve(testDataDir.name + ".dump") val actualDumpFile = tmpdir.resolve(testDataDir.name + ".dump")
// Check CLI-output of compiler // Check CLI-output of compiler
val actualOutput = invokeImportsProducerAndGrabOutput(testDataDir, tmpdir, actualDumpFile) val actualOutput = invokeImportsDumperAndGrabOutput(testDataDir, tmpdir, actualDumpFile)
KotlinTestUtils.assertEqualsToFile(expectedOutputFile, actualOutput) KotlinTestUtils.assertEqualsToFile(expectedOutputFile, actualOutput)
// Check imports dump // Check imports dump
@@ -45,27 +43,27 @@ class ImportsProducerTest : TestCaseWithTmpdir() {
KotlinTestUtils.assertEqualsToFile(expectedDumpFile, actualRelativizedDump) KotlinTestUtils.assertEqualsToFile(expectedDumpFile, actualRelativizedDump)
} }
private fun invokeImportsProducerAndGrabOutput(testDataDir: File, tmpDir: File, actualDumpFile: File): String { private fun invokeImportsDumperAndGrabOutput(testDataDir: File, tmpDir: File, actualDumpFile: File): String {
val importsDumperJarInDist = File("dist/kotlinc/lib/kotlin-imports-dumper-compiler-plugin.jar")
if (!importsDumperJarInDist.exists()) {
TestCase.fail(".jar for imports dumper isn't found, searched: ${importsDumperJarInDist.absolutePath}")
}
val compiler = K2JVMCompiler() val compiler = K2JVMCompiler()
val (output, exitCode) = executeCompilerGrabOutput( val (output, exitCode) = executeCompilerGrabOutput(
compiler, compiler,
listOf( listOf(
testDataDir.absolutePath, testDataDir.absolutePath,
DESTINATION_COMPILER_ARGUMENT, "-d",
tmpDir.path, tmpDir.path,
OUTPUT_IMPORTS_COMPILER_ARGUMENT + "=" + actualDumpFile.path "-Xplugin=${importsDumperJarInDist.path}",
"-P",
"plugin:${ImportsDumperCommandLineProcessor.PLUGIN_ID}:${ImportsDumperCliOptions.DESTINATION.name}=${actualDumpFile.path}"
) )
) )
// TestCase.assertEquals("Imports dumper should return ExitCode.OK", ExitCode.OK, exitCode)
return getNormalizedCompilerOutput(output, exitCode, testDataDir.path) return getNormalizedCompilerOutput(output, exitCode, testDataDir.path)
} }
companion object {
const val DESTINATION_COMPILER_ARGUMENT = "-d"
const val OUTPUT_IMPORTS_COMPILER_ARGUMENT = "-Xoutput-imports"
}
} }
private fun String.relativizeAbsolutePaths(relativeTo: File): String { private fun String.relativizeAbsolutePaths(relativeTo: File): String {
-1
View File
@@ -56,7 +56,6 @@ dependencies {
fatJarContents(commonDep("com.google.code.findbugs", "jsr305")) fatJarContents(commonDep("com.google.code.findbugs", "jsr305"))
fatJarContents(commonDep("io.javaslang", "javaslang")) fatJarContents(commonDep("io.javaslang", "javaslang"))
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false } fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"), proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"),
firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"), firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"),
-1
View File
@@ -56,7 +56,6 @@ dependencies {
fatJarContents(commonDep("com.google.code.findbugs", "jsr305")) fatJarContents(commonDep("com.google.code.findbugs", "jsr305"))
fatJarContents(commonDep("io.javaslang", "javaslang")) fatJarContents(commonDep("io.javaslang", "javaslang"))
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false } fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"), proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"),
firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"), firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"),
-1
View File
@@ -56,7 +56,6 @@ dependencies {
fatJarContents(commonDep("com.google.code.findbugs", "jsr305")) fatJarContents(commonDep("com.google.code.findbugs", "jsr305"))
fatJarContents(commonDep("io.javaslang", "javaslang")) fatJarContents(commonDep("io.javaslang", "javaslang"))
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false } fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-core")) { isTransitive = false }
fatJarContents(commonDep("org.jetbrains.kotlinx", "kotlinx-serialization-runtime")) { isTransitive = false }
proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"), proguardLibraryJars(files(firstFromJavaHomeThatExists("jre/lib/rt.jar", "../Classes/classes.jar"),
firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"), firstFromJavaHomeThatExists("jre/lib/jsse.jar", "../Classes/jsse.jar"),
+2
View File
@@ -89,6 +89,7 @@ include ":kotlin-build-common",
":noarg-ide-plugin", ":noarg-ide-plugin",
":kotlin-sam-with-receiver-compiler-plugin", ":kotlin-sam-with-receiver-compiler-plugin",
":sam-with-receiver-ide-plugin", ":sam-with-receiver-ide-plugin",
":kotlin-imports-dumper-compiler-plugin",
":kotlin-source-sections-compiler-plugin", ":kotlin-source-sections-compiler-plugin",
":plugins:uast-kotlin", ":plugins:uast-kotlin",
":plugins:uast-kotlin-idea", ":plugins:uast-kotlin-idea",
@@ -273,6 +274,7 @@ project(':examples:scripting-jvm-simple-script-host').projectDir = "$rootDir/lib
project(':examples:scripting-jvm-maven-deps').projectDir = "$rootDir/libraries/examples/scripting/jvm-maven-deps/script" as File project(':examples:scripting-jvm-maven-deps').projectDir = "$rootDir/libraries/examples/scripting/jvm-maven-deps/script" as File
project(':examples:scripting-jvm-maven-deps-host').projectDir = "$rootDir/libraries/examples/scripting/jvm-maven-deps/host" as File project(':examples:scripting-jvm-maven-deps-host').projectDir = "$rootDir/libraries/examples/scripting/jvm-maven-deps/host" as File
project(':pill:generate-all-tests').projectDir = "$rootDir/plugins/pill/generate-all-tests" as File project(':pill:generate-all-tests').projectDir = "$rootDir/plugins/pill/generate-all-tests" as File
project(':kotlin-imports-dumper-compiler-plugin').projectDir = "$rootDir/plugins/imports-dumper" as File
// plugin markers: // plugin markers:
project(':kotlin-gradle-plugin:plugin-marker').projectDir = file("$rootDir/libraries/tools/kotlin-gradle-plugin/plugin-marker") project(':kotlin-gradle-plugin:plugin-marker').projectDir = file("$rootDir/libraries/tools/kotlin-gradle-plugin/plugin-marker")