Задача Gradlew Clean не удалась после обновления инструментов Gradle Build до 8.1.4Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Задача Gradlew Clean не удалась после обновления инструментов Gradle Build до 8.1.4

Сообщение Anonymous »

У меня есть проблема: gradlew clean Задача в моем модуле библиотеки Android не удалось каждый раз после обновления Android.tools.build:gradle из 7.3.1 до 8.1.4 . Это дает ошибку: < /p>

Код: Выделить всё

> java.io.IOException: Unable to delete directory 'C:\my_project\android\build'
Failed to delete some children. This might happen because a process has files open or has its working directory set in the target directory.
- C:\my_project\android\build\tmp\.cache\expanded\expanded.lock
- C:\my_project\android\build\tmp\.cache\expanded
- C:\my_project\android\build\tmp\.cache
- C:\my_project\android\build\tmp
Я могу вручную удалить каталог Build , но после этого я все еще получаю ту же ошибку. Чистая задача не выполняется только в библиотеке Android с именем Android . Другие модули чистые задачи выполняются без ошибок. Я могу запустить оба «окончательных» модулях ( и huawei ) Без проблем.

Код: Выделить всё

project(":core") {
apply plugin: "java-library"
dependencies {
api "com.badlogicgames.gdx:gdx:$gdxVersion"
api "com.badlogicgames.gdx:gdx-ai:$gdxAIVersion"
}
}

project(":game") {
apply plugin: "java-library"
dependencies {
api project(":core")
}
}

project(":mobile") {
apply plugin: "java-library"
dependencies {
api project(":game")
}
}

project(":android") {
apply plugin: "com.android.library"
configurations { natives }
dependencies {
api project(":mobile")
api "androidx.core:core:$androidxCoreVersion"
api "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-arm64-v8a"
natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86_64"
}
}

project(":google") {
apply plugin: "com.android.application"
dependencies {
implementation project(":android")
implementation "com.android.support:multidex:$multidexVersion"
constraints {
implementation('androidx.fragment:fragment') {
version {
strictly "$androidxCoreVersion"
}
}
}
}
}

project(":huawei") {
apply plugin: "com.android.application"
dependencies {
implementation project(":android")
implementation "com.android.support:multidex:$multidexVersion"
}
}
Вот моя build.gradle для модуля Android:

Код: Выделить всё

apply plugin: 'com.android.library'

android {
compileSdk 34
buildToolsVersion = '34.0.0'
namespace "my.package.name.android"

defaultConfig {
minSdkVersion 19
targetSdkVersion 34
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

task copyAndroidNatives() {
file("libs/armeabi/").mkdirs();
file("libs/armeabi-v7a/").mkdirs();
file("libs/x86/").mkdirs();
file("libs/arm64-v8a/").mkdirs()
file("libs/x86_64/").mkdirs()

configurations.natives.files.each { jar ->
def outputDir = null
if (jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
if (jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
if (jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")
if (jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64")
if (outputDir != null) {
copy {
from zipTree(jar)
into outputDir
include "*.so"
}
}
}
}

tasks.whenTaskAdded { packageTask ->
if (packageTask.name.contains("package")) {
packageTask.dependsOn 'copyAndroidNatives'
}
}
Ошибка исчезает, когда я удаляю CopyAndroidnative () задача из build.gradle , но это не решение, потому что оно должно быть выполнено. CopyAndroidnative ()-это задача, необходимая libgdx`-вот шаблон: https://github.com/libgdx/libgdx-gradle ... ild.gradle>

Подробнее здесь: https://stackoverflow.com/questions/795 ... s-to-8-1-4
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»