diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 282c1261e..bdf36987f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,7 @@ [versions] agp = "7.4.0" +agp-tooling = "7.3.1" +gradle-tooling = "7.6" kotlin = "1.8.0" tree-sitter = "1.0.10" editor = "0.21.0" @@ -95,6 +97,11 @@ tests-androidx-junit = { module = "androidx.test.ext:junit", version = "1.1.5" } tests-androidx-espresso = { module = "androidx.test.espresso:espresso-core", version = "3.5.1" } tests-mockito-kotlin = { module = "org.mockito.kotlin:mockito-kotlin", version = "4.1.0" } +# Tooling +tooling-builderModel = { module="com.android.tools.build:builder-model", version.ref = "agp-tooling" } +tooling-gradleApi = { module="org.gradle:gradle-tooling-api", version.ref = "gradle-tooling" } +tooling-slf4j = { module = "org.slf4j:slf4j-api", version = "2.0.6" } + [plugins] android-application = { id = "com.android.application", version.ref = "agp" } android-library = { id = "com.android.library", version.ref = "agp" } diff --git a/subprojects/builder-model-impl/build.gradle.kts b/subprojects/builder-model-impl/build.gradle.kts index 4d15513f5..143c33035 100644 --- a/subprojects/builder-model-impl/build.gradle.kts +++ b/subprojects/builder-model-impl/build.gradle.kts @@ -23,5 +23,5 @@ plugins { dependencies { implementation(libs.common.jkotlin) - api("com.android.tools.build:builder-model:7.3.1") + api(libs.tooling.builderModel) } \ No newline at end of file diff --git a/subprojects/tooling-api-impl/build.gradle.kts b/subprojects/tooling-api-impl/build.gradle.kts index c45ee778c..85ab36471 100644 --- a/subprojects/tooling-api-impl/build.gradle.kts +++ b/subprojects/tooling-api-impl/build.gradle.kts @@ -15,7 +15,6 @@ * along with AndroidIDE. If not, see . */ -import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.archivesName import org.jetbrains.kotlin.utils.addToStdlib.ifTrue @@ -26,9 +25,7 @@ plugins { id("org.jetbrains.kotlin.jvm") } -shadow { - archivesName.set("tooling-api") -} +shadow { archivesName.set("tooling-api") } tasks.withType { manifest { attributes("Main-Class" to "com.itsaky.androidide.tooling.impl.Main") } @@ -41,14 +38,12 @@ tasks.register("copyJarToAssets") { tasks.register("renameJar") { finalizedBy("copyJarToAssets") - + doLast { val jar = project.file("${project.buildDir}/libs/tooling-api-${project.version}-all.jar") val destJar = jar.parentFile.resolve("tooling-api-all.jar") - destJar.exists().ifTrue { - destJar.delete() - } - + destJar.exists().ifTrue { destJar.delete() } + jar.renameTo(destJar) } } @@ -63,11 +58,11 @@ dependencies { implementation(libs.common.jkotlin) implementation(libs.xml.xercesImpl) implementation(libs.xml.apis) - implementation("org.gradle:gradle-tooling-api:7.6") + implementation(libs.tooling.gradleApi) testImplementation(projects.subprojects.toolingApiTesting) testImplementation(libs.tests.junit) testImplementation(libs.tests.google.truth) - runtimeOnly("org.slf4j:slf4j-api:2.0.6") + runtimeOnly(libs.tooling.slf4j) }