Estou recebendo esse aviso no arquivo gradle do meu projeto:
Aviso: (16, 5) 'buildTypes' não pode ser aplicado a '(groovy.lang.Closure <com.android.build.gradle.internal.dsl.BuildType>)'
Minha seção buildTypes é:
buildTypes {
debug {
debuggable true
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
Atualmente, estou usando o Android Studio 1.1.0, compileSdkVersion 22, buildToolsVersion 22.0.0 e targetSdkVersion 22. Tentei voltar para 21, mas ainda estava recebendo o aviso.
O que causa esse aviso e como ele é corrigido?
android-studio
android-gradle-plugin
Jim Vitek
fonte
fonte
Respostas:
Para mim, o problema não foi resolvido aplicando a solução acima. Em vez disso, tive que ir às configurações no Android Studio e selecionar "Usar gradle wrapper":
No Android Studio, selecione: Arquivo \ Configurações \ Compilação, Execução, Implantação \ Ferramentas de compilação \ Gradle
(Usuários do Mac: Android Studio \ Preferences ... \ Build, Execution, Deployment \ Build tools \ Gradle )
Marca: Usar wrapper gradle padrão (padrão)
Isso removeu todos os avisos 'não podem ser aplicados a' (groovy.lang.Closure ') nos arquivos de compilação.
fonte
Eu tive o mesmo problema. Mover os buildTypes como a última entrada na seção android funcionou para mim.
fonte
buildTypes
. Então, essa solução funcionou para a última!1 Recorte e cole os "buildTypes" na mesma posição na seção "android"
2 Projeto Re Sincronizar
fonte
Para resolver esse problema, no seu Android Studio, vá para Arquivo -> Configurações . Nas configurações, escolha Compilar, Execução, Implantação -> Ferramentas de Compilação -> Gradle e selecione a opção "Usar wrapper padrão da gradação (recomendado)" .
Após a reconstrução, o build.gradle ficará totalmente bem.
fonte
Se nenhuma das opções acima funcionar, faça o seguinte
Project
perspectiva no "Project Explorer"..gradle
ebuild
pastas.fonte
Consegui resolver o meu problema simplesmente fazendo o seguinte: Clique em "Arquivo" e selecione "Invalidar caches / reiniciar"
fonte
A maneira mais fácil de corrigir esses problemas do Gradle é recriar o projeto para permitir que o Android Studio reconfigure o Gradle.
Basta selecionar "Abrir um projeto existente do Android Studio" e escolher a pasta do projeto.
Mais detalhes aqui .
fonte
isso funcionou para mim:
fonte
O problema aparece quando você importa um projeto para o seu ambiente e o plug-in Gradle é instalado em um local diferente do que estava no original. Você só precisa apontar onde está a instalação do Gradle.
Mover buildTypes ou defaultConfig ou qualquer outra coisa entre si não é uma solução completa
fonte
O problema em questão é que as configurações do Android Studio que você provavelmente importou na atualização ainda estavam apontando para o gradle-2.4 ou outras versões que o Android Studio 1.5 espera.
Para resolver esse problema, abra Configurações e vá para Compilar, Execução, Implantação> Ferramentas de compilação> Gradle e altere o caminho inicial da distribuição de gradle local ou selecione o wrapper de gradle padrão.
Aplique e sincronize novamente o seu projeto.
fonte
Eu tive o mesmo problema. Iniciei um novo projeto e ele funcionou, então apenas copiei o arquivo build.gradle. No meu caso, a única diferença foi a falta da seção compileOptions. Eu o removi do meu projeto, sincronizei o gradle, reinsirai a seção compileOptions e depois sincronizei o gradle novamente.
fonte
No seu Android Studio, vá para Arquivo -> Configurações. Em seguida, escolha Compilar, Execução, Implantação -> Ferramentas de Compilação -> Gradle e selecione "Usar wrapper de gradle padrão (recomendado)".
Recrie o projeto.
fonte
No meu caso, minha
buildTypes
seção estava acima da minhaproductFlavors
seção. A troca de posições eliminou o aviso:ANTES:
DEPOIS DE:
Estou usando o Android Studio 2.1.2 com a seguinte configuração na parte superior da minha
android
seção:fonte
Eu costumava receber esse aviso depois de atualizar o Android Studio.
Quando fui para Configurações >> Ferramentas de construção >> Gradle , achei o caminho da Gradle local inválido, pois a versão da gradle também foi atualizada de 2.6 para 2.8.
Corrigido o novo caminho e o ressincronizador gradle removeu o aviso.
Outra maneira é usar
gradlewrapper
.fonte
Alterar o DistributionUrl = https: //services.gradle.org/distributions/gradle-2.1-bin.zip para gradle-2.1-all.zip em gradle-wrapper.properties resolveu o problema para mim.
fonte
EDIT: É assim que finalmente resolvi este problema ...
Navegue no Android Studio para:
Arquivo | Configurações | Compilação, Execução, Implantação | Ferramentas de compilação | Gradle
Verifique se isso está desmarcado, apesar de ser recomendável manter ...
Use o invólucro com gradação padrão (recomendado)
e que este está marcado ...
Usar distribuição local do gradle
e que Gradle Home está definido para isso, possivelmente com um gradle-nn posterior ...
C: / Arquivos de Programas / Android / Android Studio1 / gradle / gradle-2.4
Pode ser necessário reiniciar o Android Studio, reconstruir o projeto etc., mas o problema foi resolvido.
Fim da edição.
Estou postando isso para aconselhar alguém novo neste problema a ignorá-lo. O projeto é executado perfeitamente, independentemente. Isso é simplesmente um bug no sistema de compilação, que deve ser corrigido em breve. Eu postei um comentário e votei aqui, onde é novamente um tópico ativo ...
https://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort=&id=76719
Depois de tentar, sem sucesso, as sugestões nos três tópicos a seguir, refiz todo o projeto do zero. Iniciei um novo projeto do Android Studio, copiei todas as bibliotecas originais e arquivos principais para ele, ignorando os arquivos gerados pelo sistema de compilação e reconstruindo o projeto. Tudo estava bem, exceto que todos aqueles "não podem ser aplicados a '(groovy.lang.Closure)'" avisos reapareceram com vingança. Depois, repassei essas sugestões apenas para ter certeza de que não havia esquecido nada.
1 buildTypes não pode ser aplicado a groovy.lang.Closure, vá para as configurações no Android Studio e selecione "Usar gradle wrapper": No Android Studio, selecione: Arquivo \ Configurações \ Build, Execução, Implantação \ Ferramentas de construção \ Gradle Mark: Use default gradle wrapper (padrão) Isso removeu todos os avisos 'não podem ser aplicados a' (groovy.lang.Closure ') nos arquivos de construção.
2 'dependências' não podem ser aplicadas a '(groovy.lang.Closure)' Abra e edite o arquivo: yourproject / gradle / wrapper / gradle-wrapper.propertie. Edite o conteúdo conforme a imagem abaixo e salve. Exclua esta pasta: yourproject / .gradle. Clique em Sincronizar projeto com arquivos gradle e pronto.
3 https://github.com/DrKLO/Telegram/issues/870
Minha configuração é: Android Studio 1.3, compileSdk versão 22, buildTools versão "22.0.1"
fonte
excluir pasta gradle na pasta do aplicativo e ressincronizar o projeto
fonte
Tudo o que tive que fazer para remover
De
e o aviso foi embora.
A aparência final foi assim
fonte
Alterando o
buildToolsVersion
depara
trabalhou para mim.
fonte