Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

erro na build do gradle

Quando coloquei o código no arquivo do gradle, o "def" não funcionou e o "kapt" também. Apareceu uma lista grande de erros: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Código completo do build.gradle do app:

import org.jetbrains.kotlin.kapt3.base.Kapt.kapt

plugins {
    id("com.android.application")
    id("org.jetbrains.kotlin.android")
    id ("kotlin-parcelize")
    id ("kotlin-kapt")
}

android {
    namespace = "br.com.alura.orgs"
    compileSdk = 33

    defaultConfig {
        applicationId = "br.com.alura.orgs"
        minSdk = 24
        targetSdk = 33
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
        vectorDrawables {
            useSupportLibrary = true
        }
    }

    buildTypes {
        release {
            isMinifyEnabled = false
            proguardFiles(
                getDefaultProguardFile("proguard-android-optimize.txt"),
                "proguard-rules.pro"
            )
        }
    }
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
    buildFeatures {
        compose = true
        viewBinding = true
    }
    composeOptions {
        kotlinCompilerExtensionVersion = "1.4.3"
    }
    packaging {
        resources {
            excludes += "/META-INF/{AL2.0,LGPL2.1}"
        }
    }
}

dependencies {
    def room_version = "2.3.0"

    implementation ("androidx.room:room-runtime:$room_version")
    kapt ("androidx.room:room-compiler:$room_version")

    // outras dependências...


}
2 respostas
solução!

Olá, Juan!

Pelo que percebi, você está tendo problemas com a configuração do Room no seu projeto Android, especificamente com o "def" e o "kapt" no seu arquivo build.gradle.

Primeiramente, verifique se você está utilizando a versão correta do Kotlin e do Gradle. Você pode fazer isso verificando as versões no arquivo build.gradle no nível do projeto (não no nível do módulo).

Em relação ao "def", ele é usado para declarar uma variável no Groovy (a linguagem de script usada nos arquivos Gradle). No seu caso, você está usando para definir a versão do Room. Se o "def" não está sendo reconhecido, pode ser um problema com o seu ambiente de desenvolvimento ou um erro de sintaxe.

Quanto ao "kapt", ele é um plugin do Kotlin para processamento de anotações. Ele é necessário para o Room funcionar corretamente. Verifique se você adicionou o plugin 'kotlin-kapt' no topo do seu arquivo build.gradle, como mostrado na aula.

Seu código deve ser parecido com este:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
}

android {
    // ...
}

dependencies {
    def room_version = "2.3.0"

    implementation "androidx.room:room-runtime:$room_version"
    kapt "androidx.room:room-compiler:$room_version"
    
    // outras dependências...
}

Se mesmo assim o problema persistir, tente limpar o projeto (no menu Build, selecione Clean Project) e depois reconstruir (no menu Build, selecione Rebuild Project).

Espero ter ajudado e bons estudos!

Oi Matheus!

Consegui resolver. Só um detalhe, descobri que meu arquivo do build.gradle (tanto do módulo app quanto do projeto) estão em Kotlin, então mudei todas as implementações para que funcionassem no arquivo, como mudar de "def" para "val".

Obrigado!