Flutter: Plugins können keine Abhängigkeiten zu benutzerdefinierten Maven-Repositories hinzufügen

Erstellt am 8. Mai 2017  ·  3Kommentare  ·  Quelle: flutter/flutter

Schritte zum Reproduzieren

Derzeit ist das image_picker-Plug- in von der Android Image Picker- Android-Bibliothek abhängig, die zusammen mit der Hilfsbibliothek Glide auf GitHub lebt. Das Einziehen dieser Bibliotheken erfordert die Verwendung von Jitpack , einem Paket-Repository, das Anforderungen an Git weiterleitet. Das Codelab hat derzeit einen Schritt, in dem Entwickler Jitpack aktivieren, indem sie Folgendes zu ihrem build.gradle hinzufügen:

allprojects {
    repositories {
        jcenter()
        maven { url "https://jitpack.io" }  // new
    }
}

Es wäre schön, wenn die Plugins wissen könnten, dass sie vom Jitpack-Repo abhängen und diese Abhängigkeit automatisch hinzufügen könnten. In Bezug auf iOS könnten Plugins möglicherweise auch Abhängigkeiten von Cocoapods-Spezifikationsrepos von Drittanbietern hinzufügen.

Der Nachteil der Behebung dieser Einschränkung besteht darin, dass es für Flutter-Entwickler weniger vorhersehbar wäre, woher ihr gesamter Code stammt. Vielleicht funktioniert das also "wie beabsichtigt"? Aber wenn sie Plugins verwenden, sind sie bereits auf Pub angewiesen, um Builds zu erstellen. Es wäre sicherlich schön, wenn Entwickler Dinge mit Plugins erledigen könnten, ohne build.gradle-Bearbeitungen vornehmen zu müssen.

Etwas niedrigere Priorität, da dies wahrscheinlich so behoben werden könnte, dass es sich nicht um eine API-Änderung handelt.

/cc @mravn-google @mit-mit @jakobr-google @szakarias

tooling plugin

Hilfreichster Kommentar

Verallgemeinerung dieses Fehlers, um die Angabe einer Abhängigkeit von einem beliebigen benutzerdefinierten Maven-Repository abzudecken:
maven { url '<maven_repo_url>' }

Neben dem ursprünglichen Jitpack-Beispiel umfassen andere ähnliche Fälle ZenDesk und fabric.io .

Alle 3 Kommentare

Verallgemeinerung dieses Fehlers, um die Angabe einer Abhängigkeit von einem beliebigen benutzerdefinierten Maven-Repository abzudecken:
maven { url '<maven_repo_url>' }

Neben dem ursprünglichen Jitpack-Beispiel umfassen andere ähnliche Fälle ZenDesk und fabric.io .

FYI: Dieses Problem führt dazu, dass https://github.com/flutter/plugins/pull/141 eine Breaking Change ist (obwohl die Plugin-API unberührt bleibt, füge ich dem Plugin nur neue Abhängigkeiten hinzu).

cc @mravn-google

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen