Travis CI ist fehlgeschlagen, weil die Lizenz Constrain Layout nicht akzeptieren kann

9

Bevor ich diese Frage schreibe, suche ich bereits dieselbe Frage dazu, sie haben die Lizenz exportiert, weil sie immer noch die Alpha-Version des Constrainlayouts verwenden. Aber jetzt gibt Android bereits eine stabile Version des Constrainlayouts heraus. Ich habe viel Setup versucht, aber immer noch versagt ..

meine letzte .travis.yml

%Vor%

und das ist mein build.gradle

%Vor%

mit diesem Setup habe ich diesen Fehler

%Vor%

Gibt es eine Lösung ohne Umgehung der Exportlizenz?

    
martiendt 11.03.2017, 05:15
quelle

3 Antworten

27

Aktualisierte Antwort

  

Gibt es eine Lösung ohne Umgehung der Exportlizenz?

Ja, Sie können die neue sdkmanager verwenden, um die Constraint-Bibliothek zu installieren und die Lizenz zu akzeptieren :

%Vor%

Andernfalls wird die fehlende Komponente von gradle erkannt und heruntergeladen, ohne sie zu akzeptieren:

%Vor%

In diesem Fall müssen Sie, wie unten erläutert, die Lizenz das erste Mal über die Problemumgehung akzeptieren.

Vollständig funktionierendes Beispiel mit Constraint-Layout-Codelab-Repository für Android-API-Level 22 bis 25:

%Vor%

Zwei weitere Beispiele mit sdkmanager und avdmanager ohne ${DIR} Workaround:

Referenzen

Offizielle Dokumentation zu fehlende Pakete automatisch herunterladen mit Gradle

Die neuen Emulator Optionen werden in Starten Sie den Emulator über die Befehlszeile

avdmanager hier erklärt ersetzt android avd seit SDK Tools Version 25.3.0

sdkmanager hier erklärt wurde ebenfalls verbessert, um alle Lizenzen über die Befehlszeile anzuzeigen und zu akzeptieren

Vorherige Antwort: Seit sdkmanager ersetzt android Skript

Ich bin ein wenig über Travis-ci veraltet und scheint jetzt zusätzliche Arbeit zu benötigen, also ist es besser, nachzusehen:

  

Fügen Sie in Ihrer .travis.yml -Datei Folgendes hinzu:

%Vor%      

Vergessen Sie nicht, alle Lizenzen für das Hauptobjekt android zu akzeptieren:

%Vor%
  • Ein weiteres Problem und eine Umgehungsmöglichkeit:
  

Wenn Sie "Bitte installieren Sie die fehlenden Komponenten mit dem   SDK-Manager in Android Studio. "Fehler Sie können nur die fehlenden installieren   Komponente mit dem Befehlszeilenprogramm sdkmanager:

%Vor%
  • Dieser Artikel erläutert das Problem des Contraint-Layouts für Circle-ci und Travis-ci

  • Dokumentation zum sdkmanager, der im Android SDK Tools-Paket enthalten ist (25.2 .3 +)

Veraltete Lösung: Vor der Deaktivierung des Android-Skripts

Ich verwende das Standard-Travis-ci-Skript nicht, um Android-Komponenten zu installieren und Lizenzen zu akzeptieren, von hier :

%Vor%

Sie können alle Lizenzen gleichzeitig akzeptieren, wenn Sie es wie folgt tun: :

%Vor%     
albodelu 11.03.2017 15:03
quelle
0

Ich hatte das gleiche Problem und das Problem war, dass ich eine alte Version von Android Build-Tools und Gradle-Version verwendet habe, nur die Aktualisierung auf die letzte verfügbare Version hat den Trick gemacht. Zum Beispiel, heute ist die letzte Version von Gradle 3.3, und Build-Tools letzte Version ist 2.3.3. Meine build.gradle Datei sieht so aus

%Vor%

Dies wurde vor einiger Zeit als Problem Ссылка angesprochen und wenn Sie zu den letzten Antworten gehen, werden Sie feststellen, dass das Problem behoben wurde, indem Sie einfach die Gradle-Version aktualisieren und die Tools-Version erstellen.

    
Bruno Campos 10.08.2017 19:34
quelle
0

Die einfachste Lösung, die für mich funktionierte, bestand darin, die SDK-Lizenzen von SDK in mein Projekt zu kopieren und dann Travis zu empfehlen, sie während des Aufbaus in sich selbst zu kopieren.

Es gibt bereits ein geschlossenes Problem auf Travis 'Github-Seite, und eine der erwähnten Lösungen funktioniert derzeit definitiv.

Lösung

  1. Kopieren Sie den Ordner licenses im Stammverzeichnis des Android SDK.
  2. Fügen Sie es in das Stammverzeichnis Ihres eigenen Projekts in derselben Hierarchie ein, in der .travis.yml file ist.
  3. Fügen Sie diese Befehle zu Ihrem .travis.yml s before_install block:
  4. hinzu

.travis.yml :

%Vor%

Genaue Verbindung zur Lösung: Ссылка

    
MiaN KhaLiD 01.03.2018 13:13
quelle