16
16
17
17
package org.jetbrains.kotlin.script
18
18
19
+ import com.intellij.openapi.diagnostic.Logger
19
20
import com.intellij.openapi.project.Project
20
21
import com.intellij.openapi.vfs.StandardFileSystems
21
22
import com.intellij.openapi.vfs.VirtualFile
@@ -34,7 +35,7 @@ import java.util.concurrent.Future
34
35
import java.util.concurrent.TimeUnit
35
36
import kotlin.reflect.*
36
37
37
- const val DEFAULT_SCRIPT_FILE_PATTERN = " *. \\ .kts"
38
+ const val DEFAULT_SCRIPT_FILE_PATTERN = " .* \\ .kts"
38
39
39
40
@Target(AnnotationTarget .CLASS )
40
41
@Retention(AnnotationRetention .RUNTIME )
@@ -102,6 +103,8 @@ data class KotlinScriptDefinitionFromTemplate(val template: KClass<out Any>,
102
103
val environment : Map <String , Any ?>? = null
103
104
) : KotlinScriptDefinition {
104
105
106
+ private val log = Logger .getInstance(KotlinScriptDefinitionFromTemplate ::class .java)
107
+
105
108
// TODO: remove this and simplify definitionAnnotation as soon as deprecated annotations will be removed
106
109
internal class ScriptTemplateDefinitionData (val resolverClass : KClass <out ScriptDependenciesResolverEx >,
107
110
val resolver : ScriptDependenciesResolverEx ? ,
@@ -183,7 +186,15 @@ data class KotlinScriptDefinitionFromTemplate(val template: KClass<out Any>,
183
186
}
184
187
.map { it.getProxy(classLoader) }
185
188
}
186
- val reportFn = { reportSeverity: ScriptDependenciesResolverEx .ReportSeverity , s: String , position: ScriptContents .Position ? -> }
189
+ val reportFn = { reportSeverity: ScriptDependenciesResolverEx .ReportSeverity , s: String , position: ScriptContents .Position ? ->
190
+ val msg = (position?.run { " [at $line :$col ]" } ? : " " ) + s
191
+ when (reportSeverity) {
192
+ ScriptDependenciesResolverEx .ReportSeverity .ERROR -> log.error(msg)
193
+ ScriptDependenciesResolverEx .ReportSeverity .WARNING -> log.warn(msg)
194
+ ScriptDependenciesResolverEx .ReportSeverity .INFO -> log.info(msg)
195
+ ScriptDependenciesResolverEx .ReportSeverity .DEBUG -> log.debug(msg)
196
+ }
197
+ }
187
198
188
199
val fileDeps = definitionData.resolver?.resolve(script, environment, reportFn, previousDependencies)
189
200
return fileDeps?.get()
0 commit comments