Nie mogę naprawić tego błędu:
dependencies cannot be applied to '(groovy.lang.Closure)
To jest mój plik gradle:
buildscript {
repositories {
maven { url 'http://download.crashlytics.com/maven' }
}
dependencies {
classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
}
}
apply plugin: 'android'
apply plugin: 'crashlytics'
repositories {
maven { url 'http://download.crashlytics.com/maven' }
}
dependencies {
compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':FRNDzTER_core')
compile project(':cropper')
compile project(':stickyListHeaders')
compile "com.nostra13.universalimageloader:universal-image-loader:${rootProject.universalImageLoaderVersion}"
compile "com.google.android.gms:play- services:${rootProject.googlePlayServicesVersion}"
compile "de.keyboardsurfer.android.widget:crouton:${rootProject.croutonVersion}"
compile "com.nineoldandroids:library:${rootProject.nineoldandroidsVersion}"
compile 'com.github.chrisbanes.actionbarpulltorefresh:library:+'
compile 'com.crashlytics.android:crashlytics:1.+'
}
android{
compileSdkVersion rootProject.compileSdkVersion
buildToolsVersion rootProject.buildToolsVersion
defaultConfig {
minSdkVersion rootProject.minSdkVersion
targetSdkVersion rootProject.targetSdkVersion
versionCode rootProject.versionCode
versionName rootProject.versionName
}
buildTypes {
release {
debuggable rootProject.prodDebug
proguardFile 'proguard.cfg'
}
}
dependencies {
}
packagingOptions {
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
lintOptions {
abortOnError false
}
}
Odpowiedzi:
W oparciu o to, co generuje Android Studio, musisz mieć plik projektu najwyższego poziomu
build.gradle
i inny dla swojej aplikacjibuild.gradle
.Najwyższy poziom:
Poziom aplikacji:
Ale nawet bez tego, twoim problemem jest to, że masz
dependencies
wandroid
konfiguracji wtyczki.usuń ten pusty
dependencies
blok.EDYCJA: Zacząłem również otrzymywać ten błąd w najnowszym Android Studio, wszystko, co musiałem zrobić, to dodać nowszą wersję wtyczki Gradle i skompilowaćSdkVersion 22.
źródło
Możesz przejść do Preferencji i wybrać „użyj domyślnego opakowania ocen”, a następnie odbudować projekt. U mnie to zadziałało:
źródło
Iść do
Windows
Plik -> Ustawienia -> Kompilacja, wykonanie, wdrożenie -> Narzędzia kompilacji -> Gradle
Prochowiec
Preferencje -> Kompilacja, wykonanie, wdrożenie -> Narzędzia kompilacji -> Gradle
i wybierz Użyj domyślnego opakowania ocen
źródło
Mój problem polega na tym, że cały plik build.setting był zajęty
cannot be applied to '(groovy.lang.Closure)'
komunikatami ostrzegawczymi zamiast występować na jakiejś konkretnej zmiennej.Wypróbowałem wszystkie rozwiązania innych, ale żadne z nich nie działa. Skończyło się na wykonaniu tych kroków, a to działa jak urok. Jeśli napotkasz ten sam problem, spróbuj.
yourproject/gradle/wrapper/gradle-wrapper.properties
. Edytuj zawartość, aby zaktualizować wersję dystrybucji gradle, jak pokazano na poniższym obrazku, a następnie zapisz.yourproject/.gradle
.Sync project with gradle files
, to gotowe.źródło
gradle-wrapper.properties
rozwiązała mój problem. Dzięki!Jeśli już używasz „domyślnego opakowania ocen” i to nie pomaga:
Jeśli to również nie pomoże, spróbuj w 2 krokach:
Po ponownym uruchomieniu ostrzeżenie powinno zniknąć.
(U mnie zadziałało i dla Android Studio i dla IntelliJ Idea)
źródło
.gradle
z katalogu domowego.Wszedłem do preferencji, aby wypróbować jedną z innych odpowiedzi, gdy zauważyłem ostrzeżenie, że mój
gradle
katalog domowy jest nieprawidłowy. Otworzyłem więc przeglądarkę plików i wybrałem nowszągradle
wersję, a wszystkie błędy zniknęły. Obraz pokazany poniżej.źródło
Założę się, że problem jest całkowicie niezwiązany z fragmentem kodu, który wyświetla ostrzeżenia, najprawdopodobniej jest to plik proguard. W swoim kodzie miałem następujące informacje i otrzymałem to samo ostrzeżenie:
Komentując
runProguard false
, wszystkie moje problemy znikają, idź rysunek :)źródło
runProguard
naminifyEnabled
? Więcej informacji znajduje się tutajMam ten sam problem w Android Studio 2.2 , u mnie działa:
oryginalny:
przesunąć
dependencies
wandroid
:źródło
Rozwiązałem problem w Android Studio poprzez unieważnienie pamięci podręcznej i ponowne uruchomienie.
File-> Invalidate Caches / Restart..
źródło
Natknąłem się na podobny problem jak ten w IntelliJ dla projektu Kotlin. Wygląda na to, że problem polegał na tym, że w moim projekcie, mimo że był ustawiony na JDK 8, wersja językowa i API została w jakiś sposób ustawiona na 1.3. Zobacz temat Preferencje projektu> Aspekty. W moim przypadku zaznaczyłem „użyj ustawień projektu”, ale ręczne ustawienie ich dla każdego aspektu może również działać.
źródło
Ta praca dla mnie.
źródło
Pliki Gradle mogą być jawne w kilku miejscach, aby uniknąć takich błędów. Np. Zmiana
do
lub
do
źródło
Aby rozwiązać problem, po prostu zamknij projekt, a następnie wybierz „Otwórz istniejący projekt Android Studio” w menu Start i wybierz folder zawierający projekt Android. Uważaj, wybierz folder , a nie plik projektu .iml.
źródło
Wytnij i wklej „buildTypes” w tym samym miejscu w sekcji „android” i ponownie zsynchronizuj (odśwież) projekt
źródło
Naprawiłem ten problem w gradle 2.10.
Pobierz go tutaj: http://gradle.org/gradle-download/
I ustaw lokalną dystrybucję gradle w ten sposób:
źródło