-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.gradle.kts
80 lines (68 loc) · 2.62 KB
/
build.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import org.jetbrains.research.code.submissions.clustering.buildutils.*
group = "org.jetbrains.research.code.submissions.clustering"
version = "1.0-SNAPSHOT"
fun properties(key: String) = project.findProperty(key).toString()
plugins {
java
id(libs.plugins.kotlin.jvm.get().pluginId)
alias(libs.plugins.buildconfig) apply false
alias(libs.plugins.intellij)
alias(libs.plugins.dokka)
alias(libs.plugins.kotlin.serialization)
}
allprojects {
apply {
apply {
plugin("java")
plugin("kotlin")
plugin("org.jetbrains.intellij")
plugin("org.jetbrains.dokka")
plugin("org.jetbrains.kotlin.plugin.serialization")
}
}
intellij {
pluginName.set(properties("pluginName"))
version.set(properties("platformVersion"))
type.set(properties("platformType"))
plugins.set(properties("platformPlugins").split(',').map(String::trim).filter(String::isNotEmpty))
}
repositories {
mavenCentral()
maven("https://packages.jetbrains.team/maven/p/big-code/bigcode")
maven("https://packages.jetbrains.team/maven/p/bumblebee/bumblebee")
}
dependencies {
implementation(kotlin("stdlib-jdk8"))
implementation(rootProject.libs.protobuf.java)
implementation(rootProject.libs.grpc.stub)
implementation(rootProject.libs.grpc.protobuf)
implementation(rootProject.libs.grpc.netty)
implementation(rootProject.libs.grpc.stub.kotlin)
implementation(rootProject.libs.kotlinx.coroutines.core)
implementation(rootProject.libs.kotlinx.serialization.json)
implementation(rootProject.libs.kotlin.logging)
implementation(rootProject.libs.logback)
implementation(rootProject.libs.plugin.utilities.core)
implementation(rootProject.libs.plugin.utilities.test)
implementation(rootProject.libs.plugin.utilities.python)
}
tasks {
withType<JavaCompile> {
sourceCompatibility = "17"
targetCompatibility = "17"
}
withType<KotlinCompile> {
kotlinOptions.jvmTarget = "17"
}
// According to this topic:
// https://intellij-support.jetbrains.com/hc/en-us/community/posts/360010164960-Build-Intellij-plugin-in-IDEA-2019-1-2020-3?page=1#community_comment_360002517940
withType<org.jetbrains.intellij.tasks.BuildSearchableOptionsTask>()
.forEach { it.enabled = false }
}
configureProtobuf()
configureDiktat()
configureDetekt()
}
createDiktatTask()
createDetektTask()