Wenn ich versuche, ./gradlew build.gradle von Terminal zu laufen, ich habe folgende Fehler wurde immer:Gradle Fehler „Keine Unterschrift des Method“ kompiliert
> No signature of method: org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.compile() is applicable for argument types: (org.gradle.api.internal.project.DefaultProject_Decorated) values: [project ':TestMobile']
Possible solutions: module(java.lang.Object)
Ich habe versucht, die Java-Plugin an root build Anwendung. Gradle-Datei und auch auf Unterprojekten. aber immer noch bekomme ich denselben Fehler.
Ich habe die folgende Projektstruktur:
ProjectRepos
->build.gradle
->settings.gradle
->TestMobile (Android plugin)
->build.gradle
->ThirdParty/SlidingMenu (Android library)
->build.gradle
Wo Top-Level-build.gradle enthält:
// Top-level build file where you can add configuration options common to all sub- projects/modules.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
compile project(':TestMobile')
compile project(':ThirdParty:SlidingMenu')
}
}
settings.gradle enthält folgende:
include ':ThirdParty:SlidingMenu'
include ':TestMobile'
TestMobile -> Build .gradle enthält folgendes:
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':ThirdParty:SlidingMenu')
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
Thirdparty/SlidingMenu -> build.gradle enthält folgende:
apply plugin: 'android-library'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
sourceSets {
main {
......
......
}
}
Wenn ich diese Zeilen entfernen und nur Klassenpfad beibehalten. Ich erhalte folgenden Fehler: FAILURE: Konnte nicht feststellen, welche Aufgaben ausgeführt werden. * Was schief gelaufen ist: Task 'build.gradle' nicht im Root-Projekt 'ProjectRepos' gefunden. – user2506411
Dies bedeutet, dass Sie das frühere Problem überstanden haben. Sie müssen './gradlew build', nicht' ./gradlew build.gradle' aufrufen. Ich empfehle, die ersten Kapitel des [Gradle User Guide] (http://gradle.org/docs/current/userguide/userguide_single.html) zu studieren, was Sie bei Gradle erfolgreicher machen wird. –
Peter - ./gradlew Build löste alle Fehler. Danke für die Hilfe. – user2506411