diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 4875afb9f..c58674f9d 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,6 +1,6 @@
[versions]
-agp = "8.0.2"
-agp-tooling = "8.0.2"
+agp = "8.1.0"
+agp-tooling = "8.1.0"
gradle-tooling = "8.1.1"
kotlin = "1.8.21"
tree-sitter = "3.2.0"
diff --git a/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultLibrary.kt b/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultLibrary.kt
index 23e2dc47f..589f1ad33 100644
--- a/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultLibrary.kt
+++ b/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultLibrary.kt
@@ -27,6 +27,9 @@ class DefaultLibrary : Library, Serializable {
private val serialVersionUID = 1L
override var androidLibraryData: DefaultAndroidLibraryData? = null
override var artifact: File? = null
+ override var srcJar: File? = null
+ override var docJar: File? = null
+ override var samplesJar: File? = null
override var key: String = ""
override var libraryInfo: DefaultLibraryInfo? = null
override var lintJar: File? = null
diff --git a/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultModelBuilderParameter.kt b/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultModelBuilderParameter.kt
deleted file mode 100644
index a41bd76f3..000000000
--- a/subprojects/builder-model-impl/src/main/java/com/itsaky/androidide/builder/model/DefaultModelBuilderParameter.kt
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * This file is part of AndroidIDE.
- *
- * AndroidIDE is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * AndroidIDE is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with AndroidIDE. If not, see .
- */
-
-package com.itsaky.androidide.builder.model
-
-import com.android.builder.model.v2.models.ModelBuilderParameter
-import java.io.Serializable
-
-/** @author Akash Yadav */
-class DefaultModelBuilderParameter(override var variantName: String) :
- ModelBuilderParameter, Serializable {
- private val serialVersionUID = 1L
-}
diff --git a/subprojects/tooling-api-impl/src/main/java/com/itsaky/androidide/tooling/impl/sync/AndroidProjectModelBuilder.kt b/subprojects/tooling-api-impl/src/main/java/com/itsaky/androidide/tooling/impl/sync/AndroidProjectModelBuilder.kt
index 8446ebd5f..b90e4346d 100644
--- a/subprojects/tooling-api-impl/src/main/java/com/itsaky/androidide/tooling/impl/sync/AndroidProjectModelBuilder.kt
+++ b/subprojects/tooling-api-impl/src/main/java/com/itsaky/androidide/tooling/impl/sync/AndroidProjectModelBuilder.kt
@@ -51,7 +51,10 @@ class AndroidProjectModelBuilder(androidVariant: String) :
log("Selected build variant '$selectedVariant' for project '$projectpath'")
val variantDependencies = controller.getModelAndLog(module, VariantDependencies::class.java,
- ModelBuilderParameter::class.java) { it.variantName = selectedVariant }
+ ModelBuilderParameter::class.java) {
+ it.variantName = selectedVariant
+ it.dontBuildRuntimeClasspath = false
+ }
return AndroidProjectImpl(
module.gradleProject,
diff --git a/subprojects/tooling-api-model/src/main/java/com/itsaky/androidide/tooling/api/util/AndroidModulePropertyCopier.kt b/subprojects/tooling-api-model/src/main/java/com/itsaky/androidide/tooling/api/util/AndroidModulePropertyCopier.kt
index ee115d759..41d250ccf 100644
--- a/subprojects/tooling-api-model/src/main/java/com/itsaky/androidide/tooling/api/util/AndroidModulePropertyCopier.kt
+++ b/subprojects/tooling-api-model/src/main/java/com/itsaky/androidide/tooling/api/util/AndroidModulePropertyCopier.kt
@@ -270,7 +270,7 @@ object AndroidModulePropertyCopier {
}
this.compileDependencies = copy(artifact.compileDependencies)
- this.runtimeDependencies = copy(artifact.runtimeDependencies)
+ this.runtimeDependencies = copy(artifact.runtimeDependencies ?: emptyList())
this.unresolvedDependencies = copy(artifact.unresolvedDependencies)
}
@@ -284,6 +284,9 @@ object AndroidModulePropertyCopier {
@JvmName("copyGraphItems")
fun copy(graphs: List): List {
+ if (graphs.isEmpty()) {
+ return emptyList()
+ }
return graphs.map { copy(it) }
}