Wie verwende ich die lokale AAR-Abhängigkeit?

Lesezeit: 2 Minuten

Benutzer-Avatar
csx

Ich google nach lokalen aar, jeder sagt, dass es funktionieren kann, aber es funktioniert nicht im Android Studio 1.1.0.

Ich versuche zu verwenden:

compile fileTree(dir: 'libs', include: ['*.aar'])

aber es tipp:

Warning:Project app: Only Jar-type local dependencies are supported. Cannot handle: /Users/kycq/AndroidStudioProjects/QingTaJiao/app/libs/KycqBasic-release.aar

Wie soll ich tun, um lokales aar zu verwenden? wenn ich verwenden sollte:

compile 'com.example.library:library:1.0.0@aar'

Wie macht man das?

  • stackoverflow.com/questions/21882804/…

    – Jorge Campos

    5. März 2015 um 3:38 Uhr

  • stackoverflow.com/a/24894387/460557

    – Jorge Campos

    5. März 2015 um 3:39 Uhr

  • Sehen Sie sich diese aktualisierte Antwort an: stackoverflow.com/a/28816265/2745762

    – Nishant Srivastava

    24. März 2015 um 19:05 Uhr

Benutzer-Avatar
Sandy D.

Ich bekam die gleichen Fehler.

Das war das einzige was mir geholfen hat:

dependencies {
   compile(name:'nameOfYourAARFileWithoutExtension', ext:'aar')
 }
repositories{
      flatDir{
              dirs 'libs'
       }
 }

Referenz: Das Hinzufügen lokaler .aar-Dateien zum Gradle-Build mit “flatDirs” funktioniert nicht

  • das hat mir geholfen. Vielen Dank

    – Shyam Sunder

    18. Dezember 2017 um 17:13 Uhr

In meinem Fall muss ein aar verteilt werden. Wenn ich das aar in ein anderes Projekt importiere, erscheint dieser Fehler. Ich löse dieses Problem, indem ich das aar mit einer Maven-Abhängigkeitsstruktur (pom, md5 usw.) verteile.

publishing {
  publications {
    maven(MavenPublication) {
      groupId "<GROUP_ID>"
      artifactId "<ARTIFACT_ID>"
      version <VERSION>
      artifact "$buildDir/outputs/aar/<AAR_FILE>"
      pom.withXml {
        def dependenciesNode = asNode().appendNode("dependencies")
        configurations.compile.allDependencies.each { dependency ->
          def dependencyNode = dependenciesNode.appendNode("dependency")
          dependencyNode.appendNode("groupId", dependency.group)
          dependencyNode.appendNode("artifactId", dependency.name)
          dependencyNode.appendNode("version", dependency.version)
        }
      }
    }
  }
  repositories {
    maven {
      url "$buildDir/repo"
    }
  }
}

In der Android-Anwendung muss ich das lokale Maven-Repository hinzufügen:

allprojects {
  repositories {
    jcenter()
    maven {
      url "<LOCAL_REPO>"
    }
  }
}

Und fügen Sie die Abhängigkeit hinzu:

compile("<GROUP_ID>:<ARTIFACT_ID>:<VERSION>@aar") {
  transitive = true
}

1051860cookie-checkWie verwende ich die lokale AAR-Abhängigkeit?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy