Drop external annotations support in build tools
External annotations will only be considered in the IDE for additional inspections based on more precise types in Java libraries
This commit is contained in:
committed by
Dmitry Jemerov
parent
f2efd30a5d
commit
13c54a2678
@@ -23,19 +23,11 @@ import java.io.File.pathSeparator
|
||||
public class Kotlin2JvmTask : KotlinCompilerBaseTask() {
|
||||
override val compilerFqName = "org.jetbrains.kotlin.cli.jvm.K2JVMCompiler"
|
||||
|
||||
public var externalAnnotations: Path? = null
|
||||
public var includeRuntime: Boolean = true
|
||||
public var moduleName: String? = null
|
||||
|
||||
private var compileClasspath: Path? = null
|
||||
|
||||
public fun createExternalAnnotations(): Path {
|
||||
if (externalAnnotations == null) {
|
||||
externalAnnotations = Path(getProject())
|
||||
}
|
||||
return externalAnnotations!!.createPath()
|
||||
}
|
||||
|
||||
public fun setClasspath(classpath: Path) {
|
||||
if (compileClasspath == null) {
|
||||
compileClasspath = classpath
|
||||
@@ -65,11 +57,6 @@ public class Kotlin2JvmTask : KotlinCompilerBaseTask() {
|
||||
args.add(it.list().join(pathSeparator))
|
||||
}
|
||||
|
||||
externalAnnotations?.let {
|
||||
args.add("-annotations")
|
||||
args.add(it.list().join(pathSeparator))
|
||||
}
|
||||
|
||||
|
||||
if (moduleName == null) {
|
||||
moduleName = defaultModuleName
|
||||
|
||||
@@ -25,8 +25,6 @@
|
||||
|
||||
<property name="java.target" value="1.6"/>
|
||||
|
||||
<property name="external.annotations.path" value="${basedir}/annotations"/>
|
||||
|
||||
<property name="dependencies.dir" value="${basedir}/dependencies"/>
|
||||
|
||||
<condition property="bootstrap.or.local.build" value="true">
|
||||
@@ -529,7 +527,7 @@
|
||||
|
||||
<javac2 destdir="${output}/classes/compiler" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
|
||||
source="${java.target}" target="${java.target}">
|
||||
<withKotlin externalannotations="${external.annotations.path}" modulename="kotlin-compiler"/>
|
||||
<withKotlin modulename="kotlin-compiler"/>
|
||||
<skip pattern="kotlin/jvm/internal/.*"/>
|
||||
<src refid="compilerSources.path"/>
|
||||
<classpath refid="classpath"/>
|
||||
@@ -630,7 +628,7 @@
|
||||
<cleandir dir="${output}/classes/ant"/>
|
||||
<javac2 destdir="${output}/classes/ant" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
|
||||
source="${java.target}" target="${java.target}">
|
||||
<withKotlin externalannotations="${external.annotations.path}" modulename="kotlin-ant-tools"/>
|
||||
<withKotlin modulename="kotlin-ant-tools"/>
|
||||
<skip pattern="kotlin/jvm/internal/.*"/>
|
||||
<src>
|
||||
<dirset dir="${basedir}/ant">
|
||||
@@ -960,7 +958,7 @@
|
||||
|
||||
<javac2 destdir="${output}/classes/idea-analysis" debug="true" debuglevel="lines,vars,source" includeAntRuntime="false"
|
||||
source="${java.target}" target="${java.target}">
|
||||
<withKotlin externalannotations="${external.annotations.path}" modulename="kotlin-for-upsource"/>
|
||||
<withKotlin modulename="kotlin-for-upsource"/>
|
||||
<skip pattern="kotlin/jvm/internal/.*"/>
|
||||
<src>
|
||||
<dirset dir="${basedir}/idea/ide-common" includes="src"/>
|
||||
|
||||
+1
-8
@@ -28,10 +28,6 @@ public class K2JVMCompilerArguments extends CommonCompilerArguments {
|
||||
@ValueDescription("<path>")
|
||||
public String classpath;
|
||||
|
||||
@Argument(value = "annotations", description = "Paths to external annotations")
|
||||
@ValueDescription("<path>")
|
||||
public String annotations;
|
||||
|
||||
@Argument(value = "include-runtime", description = "Include Kotlin runtime in to resulting .jar")
|
||||
public boolean includeRuntime;
|
||||
|
||||
@@ -41,9 +37,6 @@ public class K2JVMCompilerArguments extends CommonCompilerArguments {
|
||||
@Argument(value = "no-stdlib", description = "Don't include Kotlin runtime into classpath")
|
||||
public boolean noStdlib;
|
||||
|
||||
@Argument(value = "no-jdk-annotations", description = "Don't include JDK external annotations into classpath")
|
||||
public boolean noJdkAnnotations;
|
||||
|
||||
@Argument(value = "module", description = "Path to the module file to compile")
|
||||
@ValueDescription("<path>")
|
||||
public String module;
|
||||
@@ -51,7 +44,7 @@ public class K2JVMCompilerArguments extends CommonCompilerArguments {
|
||||
@Argument(value = "script", description = "Evaluate the script file")
|
||||
public boolean script;
|
||||
|
||||
@Argument(value = "kotlin-home", description = "Path to Kotlin compiler home directory, used for annotations and runtime libraries discovery")
|
||||
@Argument(value = "kotlin-home", description = "Path to Kotlin compiler home directory, used for runtime libraries discovery")
|
||||
@ValueDescription("<path>")
|
||||
public String kotlinHome;
|
||||
|
||||
|
||||
@@ -27,7 +27,6 @@ public class ModuleBuilder(
|
||||
private val sourceFiles = ArrayList<String>()
|
||||
private val classpathRoots = ArrayList<String>()
|
||||
private val javaSourceRoots = ArrayList<String>()
|
||||
private val annotationsRoots = ArrayList<String>()
|
||||
|
||||
public fun addSourceFiles(pattern: String) {
|
||||
sourceFiles.add(pattern)
|
||||
@@ -37,10 +36,6 @@ public class ModuleBuilder(
|
||||
classpathRoots.add(name)
|
||||
}
|
||||
|
||||
public fun addAnnotationsPathEntry(name: String) {
|
||||
annotationsRoots.add(name)
|
||||
}
|
||||
|
||||
public fun addJavaSourceRoot(name: String) {
|
||||
javaSourceRoots.add(name)
|
||||
}
|
||||
@@ -49,7 +44,6 @@ public class ModuleBuilder(
|
||||
override fun getJavaSourceRoots(): List<String> = javaSourceRoots
|
||||
override fun getSourceFiles(): List<String> = sourceFiles
|
||||
override fun getClasspathRoots(): List<String> = classpathRoots
|
||||
override fun getAnnotationsRoots(): List<String> = annotationsRoots
|
||||
override fun getModuleName(): String = name
|
||||
override fun getModuleType(): String = type
|
||||
}
|
||||
|
||||
+1
-6
@@ -49,7 +49,6 @@ public class ModuleXmlParser {
|
||||
public static final String JAVA_SOURCE_ROOTS = "javaSourceRoots";
|
||||
public static final String PATH = "path";
|
||||
public static final String CLASSPATH = "classpath";
|
||||
public static final String EXTERNAL_ANNOTATIONS = "externalAnnotations";
|
||||
|
||||
@NotNull
|
||||
public static ModuleScriptData parseModuleScript(
|
||||
@@ -58,8 +57,8 @@ public class ModuleXmlParser {
|
||||
) {
|
||||
FileInputStream stream = null;
|
||||
try {
|
||||
stream = new FileInputStream(xmlFile);
|
||||
//noinspection IOResourceOpenedButNotSafelyClosed
|
||||
stream = new FileInputStream(xmlFile);
|
||||
return new ModuleXmlParser(messageCollector).parse(new BufferedInputStream(stream));
|
||||
}
|
||||
catch (FileNotFoundException e) {
|
||||
@@ -164,10 +163,6 @@ public class ModuleXmlParser {
|
||||
String path = getAttribute(attributes, PATH, qName);
|
||||
moduleBuilder.addClasspathEntry(path);
|
||||
}
|
||||
else if (EXTERNAL_ANNOTATIONS.equalsIgnoreCase(qName)) {
|
||||
String path = getAttribute(attributes, PATH, qName);
|
||||
moduleBuilder.addAnnotationsPathEntry(path);
|
||||
}
|
||||
else if (JAVA_SOURCE_ROOTS.equalsIgnoreCase(qName)) {
|
||||
String path = getAttribute(attributes, PATH, qName);
|
||||
moduleBuilder.addJavaSourceRoot(path);
|
||||
|
||||
-4
@@ -190,10 +190,6 @@ public class KotlinToJVMBytecodeCompiler {
|
||||
}
|
||||
|
||||
for (Module module : chunk) {
|
||||
for (String annotationsRoot : module.getAnnotationsRoots()) {
|
||||
configuration.add(JVMConfigurationKeys.ANNOTATIONS_PATH_KEY, new File(annotationsRoot));
|
||||
}
|
||||
|
||||
configuration.add(JVMConfigurationKeys.MODULES, module);
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,8 @@ public class JVMConfigurationKeys {
|
||||
private JVMConfigurationKeys() {
|
||||
}
|
||||
|
||||
public static final CompilerConfigurationKey<List<File>> ANNOTATIONS_PATH_KEY = CompilerConfigurationKey.create("annotations path");
|
||||
public static final CompilerConfigurationKey<List<File>> ANNOTATIONS_PATH_KEY =
|
||||
CompilerConfigurationKey.create("external annotations path");
|
||||
|
||||
public static final CompilerConfigurationKey<List<AnalyzerScriptParameter>> SCRIPT_PARAMETERS =
|
||||
CompilerConfigurationKey.create("script");
|
||||
|
||||
Vendored
+1
-3
@@ -2,14 +2,12 @@ Usage: kotlinc-jvm <options> <source files>
|
||||
where possible options include:
|
||||
-d <directory|jar> Destination for generated class files
|
||||
-classpath (-cp) <path> Paths where to find user class files
|
||||
-annotations <path> Paths to external annotations
|
||||
-include-runtime Include Kotlin runtime in to resulting .jar
|
||||
-no-jdk Don't include Java runtime into classpath
|
||||
-no-stdlib Don't include Kotlin runtime into classpath
|
||||
-no-jdk-annotations Don't include JDK external annotations into classpath
|
||||
-module <path> Path to the module file to compile
|
||||
-script Evaluate the script file
|
||||
-kotlin-home <path> Path to Kotlin compiler home directory, used for annotations and runtime libraries discovery
|
||||
-kotlin-home <path> Path to Kotlin compiler home directory, used for runtime libraries discovery
|
||||
-module-name Module name
|
||||
-nowarn Generate no warnings
|
||||
-verbose Enable verbose logging output
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
$TESTDATA_DIR$/simple.kt
|
||||
-classpath
|
||||
not/existing/path
|
||||
-annotations
|
||||
yet/another/not/existing/path
|
||||
-d
|
||||
$TEMP_DIR$
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
warning: classpath entry points to a non-existent location: not/existing/path
|
||||
warning: annotations path entry points to a non-existent location: yet/another/not/existing/path
|
||||
OK
|
||||
|
||||
+1
-3
@@ -3,14 +3,12 @@ Usage: kotlinc-jvm <options> <source files>
|
||||
where possible options include:
|
||||
-d <directory|jar> Destination for generated class files
|
||||
-classpath (-cp) <path> Paths where to find user class files
|
||||
-annotations <path> Paths to external annotations
|
||||
-include-runtime Include Kotlin runtime in to resulting .jar
|
||||
-no-jdk Don't include Java runtime into classpath
|
||||
-no-stdlib Don't include Kotlin runtime into classpath
|
||||
-no-jdk-annotations Don't include JDK external annotations into classpath
|
||||
-module <path> Path to the module file to compile
|
||||
-script Evaluate the script file
|
||||
-kotlin-home <path> Path to Kotlin compiler home directory, used for annotations and runtime libraries discovery
|
||||
-kotlin-home <path> Path to Kotlin compiler home directory, used for runtime libraries discovery
|
||||
-module-name Module name
|
||||
-nowarn Generate no warnings
|
||||
-verbose Enable verbose logging output
|
||||
|
||||
@@ -50,7 +50,6 @@ fun test6() : Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
// ArrayList without jdk-annotations cannot be used in these tests
|
||||
class MyArrayList<T>() {
|
||||
private var value17: T? = null
|
||||
private var value39: T? = null
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
package kotlin1
|
||||
|
||||
import java.util.*
|
||||
|
||||
fun main(args : Array<String>) {
|
||||
val al : ArrayList<Int> = ArrayList<Int>()
|
||||
val al1 = ArrayList<Int>(1)
|
||||
// for (x in al1) {
|
||||
//
|
||||
// }
|
||||
val <!UNUSED_VARIABLE!>al2<!> = ArrayList<Int>(ArrayList<Int>())
|
||||
checkSubtype<RandomAccess>(al)
|
||||
checkSubtype<Unit>(al.clear())
|
||||
checkSubtype<Boolean>(al.add(1))
|
||||
checkSubtype<Unit>(al.add(0, 1))
|
||||
checkSubtype<Boolean>(al.addAll(al1))
|
||||
checkSubtype<Boolean>(al.addAll(0, al1))
|
||||
checkSubtype<Int>(al.get(0))
|
||||
val m = HashMap<String, Int>()
|
||||
m.put("", 1)
|
||||
test(al, m)
|
||||
}
|
||||
fun test(a : List<Int>, m : Map<String, Int>) {
|
||||
System.out.println(
|
||||
a.get(0) + 1
|
||||
)
|
||||
HashMap<Int, Int>().get(0)
|
||||
if (m.get("") != null)
|
||||
System.out.println(m.get("")!!.plus(1))
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
package
|
||||
|
||||
package kotlin1 {
|
||||
public fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
public fun test(/*0*/ a: kotlin.List<kotlin.Int>, /*1*/ m: kotlin.Map<kotlin.String, kotlin.Int>): kotlin.Unit
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
package kotlin1
|
||||
|
||||
import java.util.*
|
||||
|
||||
fun main(args : Array<String>) {
|
||||
val al : ArrayList<Int> = ArrayList<Int>()
|
||||
checkSubtype<Any>(al.clone()) // A type mismatch on this line means that jdk-annotations were not loaded
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
package
|
||||
|
||||
package kotlin1 {
|
||||
public fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
package kotlin1
|
||||
import java.util.*
|
||||
|
||||
public inline fun <reified T> Array(n: Int, block: (Int) -> T): Array<T> = null!!
|
||||
|
||||
|
||||
fun main(args : Array<String>) {
|
||||
val al : ArrayList<Int> = ArrayList<Int>()
|
||||
|
||||
// A type mismatch on this line means that jdk-annotations were not loaded
|
||||
checkSubtype<Array<Int>>(al.toArray(Array<Int>(3, {1})))
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
package
|
||||
|
||||
package kotlin1 {
|
||||
@kotlin.inline() public fun </*0*/ reified T> Array(/*0*/ n: kotlin.Int, /*1*/ block: (kotlin.Int) -> T): kotlin.Array<T>
|
||||
public fun main(/*0*/ args: kotlin.Array<kotlin.String>): kotlin.Unit
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
import java.sql.DriverManager
|
||||
|
||||
fun getConnection(url: String?) {
|
||||
DriverManager.getConnection(url)
|
||||
checkSubtype<java.sql.Connection>(DriverManager.getConnection(url!!))
|
||||
}
|
||||
|
||||
fun getConnection(url: String?, props: java.util.Properties?) {
|
||||
DriverManager.getConnection(url, props)
|
||||
checkSubtype<java.sql.Connection>(DriverManager.getConnection(url!!, props))
|
||||
}
|
||||
|
||||
fun getConnection(url: String?, user: String?, password: String?) {
|
||||
DriverManager.getConnection(url, user!!, password!!)
|
||||
DriverManager.getConnection(url!!, user, password<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>)
|
||||
DriverManager.getConnection(url<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>, user<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>, password)
|
||||
checkSubtype<java.sql.Connection>(DriverManager.getConnection(url<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>, user<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>, password<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>))
|
||||
}
|
||||
|
||||
fun getDriver(url: String?) {
|
||||
DriverManager.getDriver(url)
|
||||
checkSubtype<java.sql.Driver>(DriverManager.getDriver(url!!))
|
||||
}
|
||||
|
||||
fun registerDriver(driver: java.sql.Driver?) {
|
||||
DriverManager.registerDriver(driver)
|
||||
DriverManager.registerDriver(driver!!)
|
||||
}
|
||||
|
||||
fun getDrivers() {
|
||||
checkSubtype<java.util.Enumeration<java.sql.Driver>>(DriverManager.getDrivers())
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
package
|
||||
|
||||
public fun getConnection(/*0*/ url: kotlin.String?): kotlin.Unit
|
||||
public fun getConnection(/*0*/ url: kotlin.String?, /*1*/ props: java.util.Properties?): kotlin.Unit
|
||||
public fun getConnection(/*0*/ url: kotlin.String?, /*1*/ user: kotlin.String?, /*2*/ password: kotlin.String?): kotlin.Unit
|
||||
public fun getDriver(/*0*/ url: kotlin.String?): kotlin.Unit
|
||||
public fun getDrivers(): kotlin.Unit
|
||||
public fun registerDriver(/*0*/ driver: java.sql.Driver?): kotlin.Unit
|
||||
@@ -1,5 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
fun getMetaData(rs: java.sql.ResultSet) {
|
||||
checkSubtype<java.sql.ResultSetMetaData>(rs.getMetaData())
|
||||
}
|
||||
@@ -1,3 +0,0 @@
|
||||
package
|
||||
|
||||
public fun getMetaData(/*0*/ rs: java.sql.ResultSet): kotlin.Unit
|
||||
@@ -1,15 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
|
||||
fun executeQuery(statement: java.sql.Statement, cmd: String?) {
|
||||
statement.executeQuery(cmd)
|
||||
checkSubtype<java.sql.ResultSet>(statement.executeQuery(cmd!!))
|
||||
}
|
||||
|
||||
fun executeQuery(statement: java.sql.PreparedStatement) {
|
||||
checkSubtype<java.sql.ResultSet>(statement.executeQuery())
|
||||
}
|
||||
|
||||
fun executeUpdate(statement: java.sql.Statement, cmd: String?) {
|
||||
statement.executeUpdate(cmd)
|
||||
statement.executeUpdate(cmd!!)
|
||||
}
|
||||
@@ -1,5 +0,0 @@
|
||||
package
|
||||
|
||||
public fun executeQuery(/*0*/ statement: java.sql.PreparedStatement): kotlin.Unit
|
||||
public fun executeQuery(/*0*/ statement: java.sql.Statement, /*1*/ cmd: kotlin.String?): kotlin.Unit
|
||||
public fun executeUpdate(/*0*/ statement: java.sql.Statement, /*1*/ cmd: kotlin.String?): kotlin.Unit
|
||||
@@ -1,16 +0,0 @@
|
||||
OUT:
|
||||
Buildfile: [TestData]/build.xml
|
||||
|
||||
build:
|
||||
[mkdir] Created dir: [Temp]/classes
|
||||
[javac] Compiling 2 source files to [Temp]/classes
|
||||
[javac] Compiling [[TestData]/root1] => [[Temp]/classes]
|
||||
[javac] Running javac...
|
||||
[jar] Building jar: [Temp]/hello.jar
|
||||
[java] Hello, a!
|
||||
[java] Java Hello
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
Total time: [time]
|
||||
|
||||
Return code: 0
|
||||
@@ -1,23 +0,0 @@
|
||||
<project name="Ant Task Test" default="build">
|
||||
<taskdef resource="org/jetbrains/kotlin/ant/antlib.xml" classpath="${kotlin.lib}/kotlin-ant.jar"/>
|
||||
|
||||
<target name="build">
|
||||
<delete dir="${temp}/classes" failonerror="false"/>
|
||||
<mkdir dir="${temp}/classes"/>
|
||||
<javac destdir="${temp}/classes" includeAntRuntime="false" srcdir="${test.data}/root1">
|
||||
<withKotlin externalannotations="${test.data}/root1/b/">
|
||||
<externalannotations path="${test.data}/root1/a/"/>
|
||||
</withKotlin>
|
||||
</javac>
|
||||
<jar destfile="${temp}/hello.jar">
|
||||
<fileset dir="${temp}/classes"/>
|
||||
</jar>
|
||||
|
||||
<java classname="hello.HelloPackage" fork="true">
|
||||
<classpath>
|
||||
<pathelement location="${temp}/hello.jar"/>
|
||||
<pathelement location="${kotlin.runtime.jar}"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
</project>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='j.Java java.lang.String f()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='j.Java java.lang.String f2()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
@@ -1,9 +0,0 @@
|
||||
package hello
|
||||
|
||||
fun main(args : Array<String>) {
|
||||
for (s in arrayListOf("a"))
|
||||
println("Hello, $s!")
|
||||
val java: String = j.Java().f()
|
||||
val hello: String = j.Java().f2()
|
||||
println("$java $hello")
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
package j;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.lang.String;
|
||||
import java.lang.System;
|
||||
|
||||
public class Java {
|
||||
public String f() {
|
||||
return "Java";
|
||||
}
|
||||
|
||||
public String f2() {
|
||||
return "Hello";
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
hello.HelloPackage.main(new String[] {});
|
||||
}
|
||||
}
|
||||
-1
@@ -3,4 +3,3 @@ name
|
||||
outputDir=out
|
||||
sources=[foo]
|
||||
classpath=[bar]
|
||||
annotations=[baz]
|
||||
|
||||
-1
@@ -2,6 +2,5 @@
|
||||
<module name="name" outputDir="out" type="java-production">
|
||||
<sources path="foo"/>
|
||||
<classpath path="bar"/>
|
||||
<externalAnnotations path="baz"/>
|
||||
</module>
|
||||
</modules>
|
||||
-1
@@ -3,4 +3,3 @@ name
|
||||
outputDir=out
|
||||
sources=[foo, foo1, foo2]
|
||||
classpath=[bar1, bar2]
|
||||
annotations=[baz, baz1, baz2]
|
||||
|
||||
-3
@@ -9,8 +9,5 @@
|
||||
<classpath path="bar1"/>
|
||||
<!-- sdfgadfg -->
|
||||
<classpath path="bar2"/>
|
||||
<externalAnnotations path="baz"/>
|
||||
<externalAnnotations path="baz1"/>
|
||||
<externalAnnotations path="baz2"/>
|
||||
</module>
|
||||
</modules>
|
||||
@@ -3,4 +3,3 @@ name
|
||||
outputDir=out
|
||||
sources=[]
|
||||
classpath=[]
|
||||
annotations=[]
|
||||
|
||||
-1
@@ -3,4 +3,3 @@ name
|
||||
outputDir=out
|
||||
sources=[foo, foo1, foo2]
|
||||
classpath=[bar, bar1, bar2]
|
||||
annotations=[baz, baz1, baz2]
|
||||
|
||||
-3
@@ -6,8 +6,5 @@
|
||||
<classpath path="bar"/>
|
||||
<classpath path="bar1"/>
|
||||
<classpath path="bar2"/>
|
||||
<externalAnnotations path="baz"/>
|
||||
<externalAnnotations path="baz1"/>
|
||||
<externalAnnotations path="baz2"/>
|
||||
</module>
|
||||
</modules>
|
||||
@@ -3,4 +3,3 @@ name
|
||||
outputDir=out
|
||||
sources=[foo]
|
||||
classpath=[]
|
||||
annotations=[]
|
||||
|
||||
@@ -3,10 +3,8 @@ name
|
||||
outputDir=out
|
||||
sources=[foo, foo1, foo2]
|
||||
classpath=[bar, bar1, bar2]
|
||||
annotations=[baz, baz1, baz2]
|
||||
name2
|
||||
type=java-production
|
||||
outputDir=out2
|
||||
sources=[2foo, 2foo1, 2foo2]
|
||||
classpath=[2bar, 2bar1, 2bar2]
|
||||
annotations=[2baz, 2baz1, 2baz2]
|
||||
|
||||
@@ -6,9 +6,6 @@
|
||||
<classpath path="bar"/>
|
||||
<classpath path="bar1"/>
|
||||
<classpath path="bar2"/>
|
||||
<externalAnnotations path="baz"/>
|
||||
<externalAnnotations path="baz1"/>
|
||||
<externalAnnotations path="baz2"/>
|
||||
</module>
|
||||
<module name="name2" outputDir="out2" type="java-production">
|
||||
<sources path="2foo"/>
|
||||
@@ -17,8 +14,5 @@
|
||||
<classpath path="2bar"/>
|
||||
<classpath path="2bar1"/>
|
||||
<classpath path="2bar2"/>
|
||||
<externalAnnotations path="2baz"/>
|
||||
<externalAnnotations path="2baz1"/>
|
||||
<externalAnnotations path="2baz2"/>
|
||||
</module>
|
||||
</modules>
|
||||
@@ -9112,60 +9112,6 @@ public class JetDiagnosticsTestGenerated extends AbstractJetDiagnosticsTest {
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/diagnostics/tests/jdk-annotations")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Jdk_annotations extends AbstractJetDiagnosticsTest {
|
||||
public void testAllFilesPresentInJdk_annotations() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/jdk-annotations"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("ArrayListAndMap.kt")
|
||||
public void testArrayListAndMap() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/ArrayListAndMap.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ArrayListClone.kt")
|
||||
public void testArrayListClone() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/ArrayListClone.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ArrayListToArray.kt")
|
||||
public void testArrayListToArray() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/ArrayListToArray.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/diagnostics/tests/jdk-annotations/sql")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class Sql extends AbstractJetDiagnosticsTest {
|
||||
public void testAllFilesPresentInSql() throws Exception {
|
||||
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/jdk-annotations/sql"), Pattern.compile("^(.+)\\.kt$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("DriverManager.kt")
|
||||
public void testDriverManager() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/sql/DriverManager.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ResultSet.kt")
|
||||
public void testResultSet() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/sql/ResultSet.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Statement.kt")
|
||||
public void testStatement() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/jdk-annotations/sql/Statement.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("compiler/testData/diagnostics/tests/labels")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
|
||||
@@ -35,15 +35,12 @@ public class CompileEnvironmentTest extends TestCase {
|
||||
try {
|
||||
File out = new File(tempDir, "out");
|
||||
File stdlib = ForTestCompileRuntime.runtimeJarForTests();
|
||||
File jdkAnnotations = JetTestUtils.getJdkAnnotationsJar();
|
||||
ExitCode exitCode = new K2JVMCompiler().exec(
|
||||
System.out,
|
||||
JetTestUtils.getTestDataPathBase() + "/compiler/smoke/Smoke.kt",
|
||||
"-d", out.getAbsolutePath(),
|
||||
"-no-stdlib",
|
||||
"-classpath", stdlib.getAbsolutePath(),
|
||||
"-no-jdk-annotations",
|
||||
"-annotations", jdkAnnotations.getAbsolutePath()
|
||||
"-classpath", stdlib.getAbsolutePath()
|
||||
);
|
||||
Assert.assertEquals(ExitCode.OK, exitCode);
|
||||
File[] files = out.listFiles();
|
||||
|
||||
@@ -65,7 +65,6 @@ public abstract class AbstractModuleXmlParserTest extends TestCase {
|
||||
"\n\ttype=" + module.getModuleType() +
|
||||
"\n\toutputDir=" + module.getOutputDirectory() +
|
||||
"\n\tsources=" + module.getSourceFiles() +
|
||||
"\n\tclasspath=" + module.getClasspathRoots() +
|
||||
"\n\tannotations=" + module.getAnnotationsRoots();
|
||||
"\n\tclasspath=" + module.getClasspathRoots();
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
-3
@@ -8,8 +8,5 @@
|
||||
<!-- Classpath -->
|
||||
<classpath path="cp1"/>
|
||||
<classpath path="cp2"/>
|
||||
<!-- External annotations -->
|
||||
<externalAnnotations path="a1/f1"/>
|
||||
<externalAnnotations path="a2"/>
|
||||
</module>
|
||||
</modules>
|
||||
|
||||
-3
@@ -7,8 +7,5 @@
|
||||
<!-- Classpath -->
|
||||
<classpath path="cp1"/>
|
||||
<classpath path="cp2"/>
|
||||
<!-- External annotations -->
|
||||
<externalAnnotations path="a1/f1"/>
|
||||
<externalAnnotations path="a2"/>
|
||||
</module>
|
||||
</modules>
|
||||
|
||||
-6
@@ -7,9 +7,6 @@
|
||||
<!-- Classpath -->
|
||||
<classpath path="cp1"/>
|
||||
<classpath path="cp2"/>
|
||||
<!-- External annotations -->
|
||||
<externalAnnotations path="a1/f1"/>
|
||||
<externalAnnotations path="a2"/>
|
||||
</module>
|
||||
<!-- Module script for tests -->
|
||||
<module name="name2" type="java-test" outputDir="output2">
|
||||
@@ -19,8 +16,5 @@
|
||||
<!-- Classpath -->
|
||||
<classpath path="cp12"/>
|
||||
<classpath path="cp22"/>
|
||||
<!-- External annotations -->
|
||||
<externalAnnotations path="a12/f12"/>
|
||||
<externalAnnotations path="a22"/>
|
||||
</module>
|
||||
</modules>
|
||||
|
||||
@@ -33,14 +33,6 @@ import org.jetbrains.jps.builders.logging.ProjectBuilderLogger;
|
||||
import org.jetbrains.jps.incremental.CompileContext;
|
||||
import org.jetbrains.jps.incremental.ModuleBuildTarget;
|
||||
import org.jetbrains.jps.incremental.ProjectBuildException;
|
||||
import org.jetbrains.jps.model.java.JpsAnnotationRootType;
|
||||
import org.jetbrains.jps.model.java.JpsJavaSdkType;
|
||||
import org.jetbrains.jps.model.library.JpsLibrary;
|
||||
import org.jetbrains.jps.model.library.sdk.JpsSdk;
|
||||
import org.jetbrains.jps.model.library.sdk.JpsSdkType;
|
||||
import org.jetbrains.jps.model.module.JpsDependencyElement;
|
||||
import org.jetbrains.jps.model.module.JpsModule;
|
||||
import org.jetbrains.jps.model.module.JpsSdkDependency;
|
||||
import org.jetbrains.kotlin.config.IncrementalCompilation;
|
||||
import org.jetbrains.kotlin.modules.KotlinModuleXmlBuilder;
|
||||
|
||||
@@ -92,7 +84,6 @@ public class KotlinBuilderModuleScriptGenerator {
|
||||
moduleSources,
|
||||
findSourceRoots(context, target),
|
||||
findClassPathRoots(target),
|
||||
findAnnotationRoots(target),
|
||||
(JavaModuleBuildTargetType) targetType,
|
||||
// this excludes the output directories from the class path, to be removed for true incremental compilation
|
||||
outputDirs
|
||||
@@ -149,33 +140,6 @@ public class KotlinBuilderModuleScriptGenerator {
|
||||
return result;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static List<File> findAnnotationRoots(@NotNull ModuleBuildTarget target) {
|
||||
LinkedHashSet<File> annotationRootFiles = new LinkedHashSet<File>();
|
||||
|
||||
JpsModule module = target.getModule();
|
||||
JpsSdk sdk = module.getSdk(getSdkType(module));
|
||||
if (sdk != null) {
|
||||
annotationRootFiles.addAll(sdk.getParent().getFiles(JpsAnnotationRootType.INSTANCE));
|
||||
}
|
||||
|
||||
for (JpsLibrary library : getAllDependencies(target).getLibraries()) {
|
||||
annotationRootFiles.addAll(library.getFiles(JpsAnnotationRootType.INSTANCE));
|
||||
}
|
||||
|
||||
// JDK is stored locally on user's machine, so its configuration, including external annotation paths
|
||||
// is not available on TeamCity. When running on TeamCity, one has to provide extra path to JDK annotations
|
||||
String extraAnnotationsPaths = System.getProperty("jps.kotlin.extra.annotation.paths");
|
||||
if (extraAnnotationsPaths != null) {
|
||||
String[] paths = extraAnnotationsPaths.split(";");
|
||||
for (String path : paths) {
|
||||
annotationRootFiles.add(new File(path));
|
||||
}
|
||||
}
|
||||
|
||||
return CollectionsKt.toList(annotationRootFiles);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static JpsSdkType getSdkType(@NotNull JpsModule module) {
|
||||
for (JpsDependencyElement dependency : module.getDependenciesList().getDependencies()) {
|
||||
|
||||
@@ -45,7 +45,6 @@ public class KotlinModuleXmlBuilder {
|
||||
List<File> sourceFiles,
|
||||
List<File> javaSourceRoots,
|
||||
Collection<File> classpathRoots,
|
||||
List<File> annotationRoots,
|
||||
JavaModuleBuildTargetType targetType,
|
||||
Set<File> directoriesToFilterOut
|
||||
) {
|
||||
@@ -71,7 +70,6 @@ public class KotlinModuleXmlBuilder {
|
||||
|
||||
processJavaSourceRoots(javaSourceRoots);
|
||||
processClasspath(classpathRoots, directoriesToFilterOut);
|
||||
processAnnotationRoots(annotationRoots);
|
||||
|
||||
closeTag(p, MODULE);
|
||||
return this;
|
||||
@@ -102,13 +100,6 @@ public class KotlinModuleXmlBuilder {
|
||||
}
|
||||
}
|
||||
|
||||
private void processAnnotationRoots(@NotNull List<File> files) {
|
||||
p.println("<!-- External annotations -->");
|
||||
for (File file : files) {
|
||||
p.println("<", EXTERNAL_ANNOTATIONS, " ", PATH, "=\"", getEscapedPath(file), "\"/>");
|
||||
}
|
||||
}
|
||||
|
||||
private void processJavaSourceRoots(@NotNull List<File> files) {
|
||||
p.println("<!-- Java source roots -->");
|
||||
for (File file : files) {
|
||||
|
||||
@@ -22,7 +22,6 @@ import org.jetbrains.jps.builders.JpsBuildTestCase;
|
||||
import org.jetbrains.jps.model.JpsDummyElement;
|
||||
import org.jetbrains.jps.model.JpsModuleRootModificationUtil;
|
||||
import org.jetbrains.jps.model.JpsProject;
|
||||
import org.jetbrains.jps.model.java.JpsAnnotationRootType;
|
||||
import org.jetbrains.jps.model.java.JpsJavaDependencyScope;
|
||||
import org.jetbrains.jps.model.java.JpsJavaLibraryType;
|
||||
import org.jetbrains.jps.model.java.JpsJavaSdkType;
|
||||
@@ -73,7 +72,6 @@ public abstract class AbstractKotlinJpsBuildTestCase extends JpsBuildTestCase {
|
||||
String versionString = System.getProperty("java.version");
|
||||
JpsTypedLibrary<JpsSdk<JpsDummyElement>> jdk = myModel.getGlobal().addSdk(name, homePath, versionString, JpsJavaSdkType.INSTANCE);
|
||||
jdk.addRoot(JpsPathUtil.pathToUrl(path), JpsOrderRootType.COMPILED);
|
||||
jdk.addRoot(JpsPathUtil.pathToUrl(PathUtil.getKotlinPathsForDistDirectory().getJdkAnnotationsPath().getAbsolutePath()), JpsAnnotationRootType.INSTANCE);
|
||||
return jdk.getProperties();
|
||||
}
|
||||
|
||||
|
||||
@@ -45,7 +45,6 @@ public class ClasspathOrderTest : TestCaseWithTmpdir() {
|
||||
listOf(sourceDir),
|
||||
listOf(sourceDir),
|
||||
listOf(PathUtil.getKotlinPathsForDistDirectory().getRuntimePath()),
|
||||
listOf(),
|
||||
JavaModuleBuildTargetType.PRODUCTION,
|
||||
setOf()
|
||||
).asText().toString()
|
||||
|
||||
@@ -32,7 +32,6 @@ public class KotlinModuleXmlGeneratorTest extends TestCase {
|
||||
Arrays.asList(new File("s1"), new File("s2")),
|
||||
Collections.singletonList(new File("java")),
|
||||
Arrays.asList(new File("cp1"), new File("cp2")),
|
||||
Arrays.asList(new File("a1/f1"), new File("a2")),
|
||||
JavaModuleBuildTargetType.PRODUCTION,
|
||||
Collections.<File>emptySet()
|
||||
).asText().toString();
|
||||
@@ -46,7 +45,6 @@ public class KotlinModuleXmlGeneratorTest extends TestCase {
|
||||
Arrays.asList(new File("s1"), new File("s2")),
|
||||
Collections.<File>emptyList(),
|
||||
Arrays.asList(new File("cp1"), new File("cp2")),
|
||||
Arrays.asList(new File("a1/f1"), new File("a2")),
|
||||
JavaModuleBuildTargetType.PRODUCTION,
|
||||
Collections.singleton(new File("cp1"))
|
||||
).asText().toString();
|
||||
@@ -61,7 +59,6 @@ public class KotlinModuleXmlGeneratorTest extends TestCase {
|
||||
Arrays.asList(new File("s1"), new File("s2")),
|
||||
Collections.<File>emptyList(),
|
||||
Arrays.asList(new File("cp1"), new File("cp2")),
|
||||
Arrays.asList(new File("a1/f1"), new File("a2")),
|
||||
JavaModuleBuildTargetType.PRODUCTION,
|
||||
Collections.singleton(new File("cp1"))
|
||||
);
|
||||
@@ -71,7 +68,6 @@ public class KotlinModuleXmlGeneratorTest extends TestCase {
|
||||
Arrays.asList(new File("s12"), new File("s22")),
|
||||
Collections.<File>emptyList(),
|
||||
Arrays.asList(new File("cp12"), new File("cp22")),
|
||||
Arrays.asList(new File("a12/f12"), new File("a22")),
|
||||
JavaModuleBuildTargetType.TEST,
|
||||
Collections.singleton(new File("cp12"))
|
||||
);
|
||||
|
||||
@@ -63,11 +63,6 @@
|
||||
<artifactId>kotlin-maven-plugin</artifactId>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<version>${project.version}</version>
|
||||
<configuration>
|
||||
<annotationPaths>
|
||||
<annotationPath>${basedir}/kotlinAnnotation</annotationPath>
|
||||
</annotationPaths>
|
||||
</configuration>
|
||||
|
||||
<executions>
|
||||
<execution>
|
||||
|
||||
@@ -63,11 +63,6 @@
|
||||
<artifactId>kotlin-maven-plugin</artifactId>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<version>${project.version}</version>
|
||||
<configuration>
|
||||
<annotationPaths>
|
||||
<annotationPath>${basedir}/kotlinAnnotation</annotationPath>
|
||||
</annotationPaths>
|
||||
</configuration>
|
||||
|
||||
<executions>
|
||||
<execution>
|
||||
|
||||
@@ -56,11 +56,6 @@
|
||||
<artifactId>kotlin-maven-plugin</artifactId>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<version>${project.version}</version>
|
||||
<configuration>
|
||||
<annotationPaths>
|
||||
<annotationPath>${basedir}/kotlinAnnotation</annotationPath>
|
||||
</annotationPaths>
|
||||
</configuration>
|
||||
|
||||
<executions>
|
||||
<execution>
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.android.build.gradle.BaseExtension org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.api.AndroidSourceSet> getSourceSets()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-31
@@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllJava()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllSource()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getJava()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.ApkVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.ApkVariant java.util.List<com.android.builder.DefaultProductFlavor> getProductFlavors()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.AidlCompile getAidlCompile()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.ProcessAndroidResources getProcessResources()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.RenderscriptCompile getRenderscriptCompile()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.LibraryVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner on(java.lang.String)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.io.Files java.io.File createTempDir()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.apache.commons.io.FilenameUtils java.lang.String getExtension(java.lang.String)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-38
@@ -1,38 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.NamedDomainObjectCollection T getByName(java.lang.String)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Plugin void apply(T)">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun apply(p0 : T) : Unit"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='org.gradle.api.Project java.util.Map<java.lang.String,?> getProperties()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.file.ConfigurableFileCollection files(java.lang.Object...)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.initialization.dsl.ScriptHandler getBuildscript()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getBuildscript() : ScriptHandler"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.logging.Logger getLogger()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.plugins.Convention getConvention()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='org.gradle.api.Project org.gradle.api.plugins.ExtensionContainer getExtensions()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.plugins.PluginContainer getPlugins()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='org.gradle.api.Project org.gradle.api.tasks.TaskContainer getTasks()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.artifacts.Configuration org.gradle.api.artifacts.ResolvedConfiguration getResolvedConfiguration()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.artifacts.ConfigurationContainer org.gradle.api.artifacts.Configuration detachedConfiguration(org.gradle.api.artifacts.Dependency...)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.artifacts.dsl.DependencyHandler org.gradle.api.artifacts.Dependency create(java.lang.Object)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection filter(org.gradle.api.specs.Spec<? super java.io.File>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection minus(org.gradle.api.file.FileCollection)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection minus(org.gradle.api.file.FileCollection) 0'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection plus(org.gradle.api.file.FileCollection)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection plus(org.gradle.api.file.FileCollection) 0'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.SourceDirectorySet java.util.Set<java.io.File> getSrcDirs()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.initialization.dsl.ScriptHandler org.gradle.api.artifacts.ConfigurationContainer getConfigurations()'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun getConfigurations() : ConfigurationContainer""/>
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='org.gradle.api.initialization.dsl.ScriptHandler org.gradle.api.artifacts.dsl.DependencyHandler getDependencies()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-17
@@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.internal.AbstractTask org.gradle.api.Project getProject()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getProject() : Project"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.internal.AbstractTask org.gradle.api.logging.Logger getLogger()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.internal.HasConvention org.gradle.api.plugins.Convention getConvention()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getConvention() : Convention"" />
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.internal.project.ProjectInternal org.gradle.api.internal.tasks.TaskContainerInternal getTasks()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.logging.Logging org.gradle.api.logging.Logger getLogger(java.lang.Class)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-30
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.plugins.Convention T getPlugin(java.lang.Class<T>)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.Convention java.util.Map<java.lang.String,java.lang.Object> getPlugins()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getPlugins() : MutableMap<String, Any>"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.Convention org.gradle.api.internal.DynamicObject getExtensionsAsDynamicObject()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getExtensionsAsDynamicObject() : DynamicObject"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.ExtensionAware org.gradle.api.plugins.ExtensionContainer getExtensions()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.PluginContainer T apply(java.lang.Class<T>)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.PluginContainer org.gradle.api.Plugin apply(java.lang.String)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='org.gradle.api.plugins.PluginContainer org.gradle.api.Plugin findPlugin(java.lang.String)'>
|
||||
<annotation name='org.jetbrains.annotations.Nullable'/>
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.tasks.SourceTask org.gradle.api.file.FileTree getSource()'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun getSource() : FileTree""/>
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='org.gradle.api.tasks.TaskContainer T create(java.lang.String, java.lang.Class<T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.tasks.compile.AbstractCompile org.gradle.api.file.FileCollection getClasspath()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
@@ -47,11 +47,6 @@
|
||||
<artifactId>kotlin-compiler-embeddable</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<artifactId>kotlin-jdk-annotations</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<artifactId>kotlin-stdlib</artifactId>
|
||||
@@ -64,12 +59,6 @@
|
||||
<sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
|
||||
|
||||
<resources>
|
||||
<resource>
|
||||
<!-- jdkAnnotations -->
|
||||
<directory>${kotlin-sdk}/lib</directory>
|
||||
<includes><include>kotlin-jdk-annotations.jar</include></includes>
|
||||
<filtering>false</filtering>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>${project.basedir}/src/main/resources</directory>
|
||||
</resource>
|
||||
@@ -80,11 +69,6 @@
|
||||
<artifactId>kotlin-maven-plugin</artifactId>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<version>${project.version}</version>
|
||||
<configuration>
|
||||
<annotationPaths>
|
||||
<annotationPath>${basedir}/kotlinAnnotation</annotationPath>
|
||||
</annotationPaths>
|
||||
</configuration>
|
||||
|
||||
<executions>
|
||||
<execution>
|
||||
|
||||
+24
-42
@@ -1,31 +1,32 @@
|
||||
package org.jetbrains.kotlin.gradle.tasks
|
||||
|
||||
import org.gradle.api.tasks.compile.AbstractCompile
|
||||
import java.io.File
|
||||
import com.intellij.ide.highlighter.JavaFileType
|
||||
import com.intellij.openapi.util.io.FileUtil
|
||||
import org.apache.commons.io.FileUtils
|
||||
import org.apache.commons.io.FilenameUtils
|
||||
import org.apache.commons.lang.StringUtils
|
||||
import org.codehaus.groovy.runtime.MethodClosure
|
||||
import org.gradle.api.GradleException
|
||||
import org.jetbrains.kotlin.cli.common.ExitCode
|
||||
import org.gradle.api.file.SourceDirectorySet
|
||||
import org.gradle.api.logging.Logger
|
||||
import org.gradle.api.logging.Logging
|
||||
import org.gradle.api.tasks.SourceTask
|
||||
import java.util.HashSet
|
||||
import org.gradle.api.tasks.TaskAction
|
||||
import org.gradle.api.file.SourceDirectorySet
|
||||
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
|
||||
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation
|
||||
import org.gradle.api.logging.Logger
|
||||
import org.gradle.api.logging.Logging
|
||||
import org.apache.commons.lang.StringUtils
|
||||
import org.apache.commons.io.FileUtils
|
||||
import org.gradle.api.Project
|
||||
import org.jetbrains.kotlin.config.Services
|
||||
import org.jetbrains.kotlin.cli.js.K2JSCompiler
|
||||
import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments
|
||||
import org.codehaus.groovy.runtime.MethodClosure
|
||||
import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments
|
||||
import org.gradle.api.tasks.compile.AbstractCompile
|
||||
import org.jetbrains.kotlin.cli.common.CLICompiler
|
||||
import com.intellij.ide.highlighter.JavaFileType
|
||||
import org.jetbrains.kotlin.idea.JetFileType
|
||||
import org.jetbrains.kotlin.cli.common.ExitCode
|
||||
import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments
|
||||
import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments
|
||||
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation
|
||||
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
|
||||
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
|
||||
import org.jetbrains.kotlin.cli.js.K2JSCompiler
|
||||
import org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
||||
import org.jetbrains.kotlin.config.Services
|
||||
import org.jetbrains.kotlin.doc.KDocArguments
|
||||
import org.jetbrains.kotlin.doc.KDocCompiler
|
||||
import org.jetbrains.kotlin.utils.LibraryUtils
|
||||
import com.intellij.openapi.util.io.FileUtil
|
||||
import org.apache.commons.io.FilenameUtils
|
||||
@@ -37,6 +38,8 @@ import java.io.IOException
|
||||
import java.lang.ref.WeakReference
|
||||
|
||||
val DEFAULT_ANNOTATIONS = "org.jebrains.kotlin.gradle.defaultAnnotations"
|
||||
import java.io.File
|
||||
import java.util.HashSet
|
||||
|
||||
val ANNOTATIONS_PLUGIN_NAME = "org.jetbrains.kotlin.kapt"
|
||||
|
||||
@@ -134,16 +137,7 @@ public open class KotlinCompile() : AbstractKotlinCompile<K2JVMCompilerArguments
|
||||
args.pluginOptions = pluginOptions.toTypedArray()
|
||||
getLogger().kotlinDebug("args.pluginOptions = ${args.pluginOptions.joinToString(File.pathSeparator)}")
|
||||
|
||||
val embeddedAnnotations = getAnnotations(getProject(), getLogger())
|
||||
val userAnnotations = kotlinOptions.annotations?.split(File.pathSeparatorChar)?.toList() ?: emptyList()
|
||||
val allAnnotations = if (kotlinOptions.noJdkAnnotations) userAnnotations else userAnnotations.plus(embeddedAnnotations.map { it.getPath() })
|
||||
if (allAnnotations.isNotEmpty()) {
|
||||
args.annotations = allAnnotations.join(File.pathSeparator)
|
||||
getLogger().kotlinDebug("args.annotations = ${args.annotations}")
|
||||
}
|
||||
|
||||
args.noStdlib = true
|
||||
args.noJdkAnnotations = true
|
||||
args.noInline = kotlinOptions.noInline
|
||||
args.noOptimize = kotlinOptions.noOptimize
|
||||
args.noCallAssertions = kotlinOptions.noCallAssertions
|
||||
@@ -294,18 +288,6 @@ private fun <T: Any> ExtraPropertiesExtension.getOrNull(id: String): T? {
|
||||
}
|
||||
}
|
||||
|
||||
fun getAnnotations(project: Project, logger: Logger): Collection<File> {
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
val annotations = project.getExtensions().getByName(DEFAULT_ANNOTATIONS) as Collection<File>
|
||||
|
||||
if (!annotations.isEmpty()) {
|
||||
logger.info("using default annontations from [${annotations.map { it.getPath() }}]")
|
||||
return annotations
|
||||
} else {
|
||||
throw GradleException("Default annotations not found in Kotlin gradle plugin classpath")
|
||||
}
|
||||
}
|
||||
|
||||
class GradleMessageCollector(val logger: Logger) : MessageCollector {
|
||||
public override fun report(severity: CompilerMessageSeverity, message: String, location: CompilerMessageLocation) {
|
||||
val text = with(StringBuilder()) {
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.android.build.gradle.BaseExtension org.gradle.api.NamedDomainObjectContainer<com.android.build.gradle.api.AndroidSourceSet> getSourceSets()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-31
@@ -1,31 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllJava()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllSource()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getJava()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.ApkVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.ApkVariant java.util.List<com.android.builder.DefaultProductFlavor> getProductFlavors()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.AidlCompile getAidlCompile()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.ProcessAndroidResources getProcessResources()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.RenderscriptCompile getRenderscriptCompile()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="com.android.build.gradle.api.LibraryVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner on(java.lang.String)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.io.Files java.io.File createTempDir()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.apache.commons.io.FilenameUtils java.lang.String getExtension(java.lang.String)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
@@ -1,32 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.NamedDomainObjectCollection T getByName(java.lang.String)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Plugin void apply(T)">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun apply(p0 : T) : Unit"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.file.ConfigurableFileCollection files(java.lang.Object...)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.initialization.dsl.ScriptHandler getBuildscript()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getBuildscript() : ScriptHandler"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.logging.Logger getLogger()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.plugins.Convention getConvention()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='org.gradle.api.Project org.gradle.api.plugins.ExtensionContainer getExtensions()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name="org.gradle.api.Project org.gradle.api.plugins.PluginContainer getPlugins()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.artifacts.Configuration org.gradle.api.artifacts.ResolvedConfiguration getResolvedConfiguration()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.artifacts.ConfigurationContainer org.gradle.api.artifacts.Configuration detachedConfiguration(org.gradle.api.artifacts.Dependency...)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.Project org.gradle.api.artifacts.dsl.DependencyHandler getDependencies()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection filter(org.gradle.api.specs.Spec<? super java.io.File>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
<item name='org.gradle.api.file.SourceDirectorySet java.util.Set<java.io.File> getSrcDirs()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.initialization.dsl.ScriptHandler org.gradle.api.artifacts.ConfigurationContainer getConfigurations()'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun getConfigurations() : ConfigurationContainer""/>
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='org.gradle.api.initialization.dsl.ScriptHandler org.gradle.api.artifacts.dsl.DependencyHandler getDependencies()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-17
@@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.internal.AbstractTask org.gradle.api.Project getProject()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getProject() : Project"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.internal.AbstractTask org.gradle.api.logging.Logger getLogger()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.internal.HasConvention org.gradle.api.plugins.Convention getConvention()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getConvention() : Convention"" />
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.internal.project.ProjectInternal org.gradle.api.internal.tasks.TaskContainerInternal getTasks()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.logging.Logging org.gradle.api.logging.Logger getLogger(java.lang.Class)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
-27
@@ -1,27 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root>
|
||||
<item name="org.gradle.api.plugins.Convention T getPlugin(java.lang.Class<T>)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.Convention java.util.Map<java.lang.String,java.lang.Object> getPlugins()">
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getPlugins() : MutableMap<String, Any>"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.Convention org.gradle.api.internal.DynamicObject getExtensionsAsDynamicObject()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||
<val name="value" val=""fun getExtensionsAsDynamicObject() : DynamicObject"" />
|
||||
</annotation>
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.ExtensionAware org.gradle.api.plugins.ExtensionContainer getExtensions()">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.PluginContainer T apply(java.lang.Class<T>)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name="org.gradle.api.plugins.PluginContainer org.gradle.api.Plugin apply(java.lang.String)">
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
|
||||
-7
@@ -1,7 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.tasks.SourceTask org.gradle.api.file.FileTree getSource()'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun getSource() : FileTree""/>
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='org.gradle.api.tasks.compile.AbstractCompile org.gradle.api.file.FileCollection getClasspath()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
@@ -72,11 +72,6 @@
|
||||
<artifactId>kotlin-maven-plugin</artifactId>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<version>${project.version}</version>
|
||||
<configuration>
|
||||
<annotationPaths>
|
||||
<annotationPath>${basedir}/kotlinAnnotation</annotationPath>
|
||||
</annotationPaths>
|
||||
</configuration>
|
||||
|
||||
<executions>
|
||||
<execution>
|
||||
@@ -107,9 +102,7 @@
|
||||
<postBuildHookScript>verify</postBuildHookScript> <!-- no extension required -->
|
||||
<extraArtifacts>
|
||||
<extraArtifact>org.jetbrains.kotlin:kotlin-gradle-plugin-core:${project.version}</extraArtifact>
|
||||
<extraArtifact>org.jetbrains.kotlin:kotlin-jdk-annotations:${project.version}</extraArtifact>
|
||||
<extraArtifact>org.jetbrains.kotlin:kotlin-js-library:${project.version}</extraArtifact>
|
||||
<extraArtifact>org.jetbrains.kotlin:kotlin-android-sdk-annotations:${project.version}</extraArtifact>
|
||||
</extraArtifacts>
|
||||
</configuration>
|
||||
<executions>
|
||||
|
||||
-10
@@ -36,8 +36,6 @@ import org.jetbrains.kotlin.gradle.internal.initKapt
|
||||
import java.net.URL
|
||||
import java.util.jar.Manifest
|
||||
|
||||
val DEFAULT_ANNOTATIONS = "org.jebrains.kotlin.gradle.defaultAnnotations"
|
||||
|
||||
val KOTLIN_AFTER_JAVA_TASK_SUFFIX = "AfterJava"
|
||||
|
||||
abstract class KotlinSourceSetProcessor<T : AbstractCompile>(
|
||||
@@ -239,9 +237,6 @@ abstract class AbstractKotlinPlugin @Inject constructor(val scriptHandler: Scrip
|
||||
project.getPlugins().apply(javaClass<JavaPlugin>())
|
||||
|
||||
configureSourceSetDefaults(project as ProjectInternal, javaBasePlugin, javaPluginConvention)
|
||||
|
||||
val gradleUtils = GradleUtils(scriptHandler, project)
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, gradleUtils.resolveKotlinPluginDependency("kotlin-jdk-annotations"))
|
||||
}
|
||||
|
||||
open protected fun configureSourceSetDefaults(project: ProjectInternal,
|
||||
@@ -332,9 +327,6 @@ open class KotlinAndroidPlugin @Inject constructor(val scriptHandler: ScriptHand
|
||||
ext, plugin, aptConfigurations)
|
||||
}
|
||||
}
|
||||
|
||||
project.getExtensions().add(DEFAULT_ANNOTATIONS, GradleUtils(scriptHandler, project)
|
||||
.resolveKotlinPluginDependency("kotlin-android-sdk-annotations"))
|
||||
}
|
||||
|
||||
private fun processVariantData(
|
||||
@@ -534,8 +526,6 @@ open class GradleUtils(val scriptHandler: ScriptHandler, val project: ProjectInt
|
||||
public fun kotlinPluginArtifactCoordinates(artifact: String): String = "org.jetbrains.kotlin:${artifact}:${kotlinPluginVersion()}"
|
||||
public fun kotlinJsLibraryCoordinates(): String = kotlinPluginArtifactCoordinates("kotlin-js-library")
|
||||
|
||||
public fun resolveKotlinPluginDependency(artifact: String): Collection<File> =
|
||||
resolveDependencies(kotlinPluginArtifactCoordinates(artifact))
|
||||
public fun resolveJsLibrary(): File = resolveDependencies(kotlinJsLibraryCoordinates()).first()
|
||||
}
|
||||
|
||||
|
||||
-4
@@ -21,10 +21,6 @@ android {
|
||||
compileSdkVersion 22
|
||||
buildToolsVersion "21.1.2"
|
||||
|
||||
kotlinOptions {
|
||||
annotations = "kotlinAnnotations"
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
main.kotlin.srcDirs += 'root/kotlin'
|
||||
}
|
||||
|
||||
-5
@@ -1,5 +0,0 @@
|
||||
<root>
|
||||
<item name='android.app.Activity android.view.MenuInflater getMenuInflater()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
</item>
|
||||
</root>
|
||||
+1
-7
@@ -44,12 +44,6 @@ task show << {
|
||||
buildscript.configurations.classpath.each { println it }
|
||||
}
|
||||
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions.annotations = "externalAnnotations"
|
||||
}
|
||||
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion="1.4"
|
||||
}
|
||||
}
|
||||
|
||||
-11
@@ -1,11 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner on(java.lang.String)'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner.MapJoiner withKeyValueSeparator(java.lang.String)'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner skipNulls()'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
+1
-6
@@ -39,11 +39,6 @@ test {
|
||||
useTestNG()
|
||||
}
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions.annotations = "externalAnnotations"
|
||||
}
|
||||
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion="1.4"
|
||||
}
|
||||
}
|
||||
|
||||
-11
@@ -1,11 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner on(java.lang.String)'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner.MapJoiner withKeyValueSeparator(java.lang.String)'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner skipNulls()'>
|
||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||
</item>
|
||||
</root>
|
||||
+1
-7
@@ -28,12 +28,6 @@ task show << {
|
||||
buildscript.configurations.classpath.each { println it }
|
||||
}
|
||||
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions.annotations = "externalAnnotations"
|
||||
}
|
||||
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion="1.4"
|
||||
}
|
||||
}
|
||||
|
||||
-6
@@ -39,12 +39,6 @@ task show << {
|
||||
buildscript.configurations.classpath.each { println it }
|
||||
}
|
||||
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions.annotations = "externalAnnotations"
|
||||
}
|
||||
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion="1.4"
|
||||
}
|
||||
|
||||
-18
@@ -1,18 +0,0 @@
|
||||
<root>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner on(java.lang.String)'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun on(separator : String?) : Joiner""/>
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner.MapJoiner withKeyValueSeparator(java.lang.String)'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value"
|
||||
val=""fun withKeyValueSeparator(keyValueSeparator : String?) : Joiner.MapJoiner?""/>
|
||||
</annotation>
|
||||
</item>
|
||||
<item name='com.google.common.base.Joiner com.google.common.base.Joiner skipNulls()'>
|
||||
<annotation name='jet.runtime.typeinfo.KotlinSignature'>
|
||||
<val name="value" val=""fun skipNulls() : Joiner""/>
|
||||
</annotation>
|
||||
</item>
|
||||
</root>
|
||||
-6
@@ -34,12 +34,6 @@ task show << {
|
||||
buildscript.configurations.classpath.each { println it }
|
||||
}
|
||||
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions.annotations = "externalAnnotations"
|
||||
}
|
||||
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion="1.4"
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user