579 votes

Vous n'avez pas accepté les accords de licence des composants SDK suivants

J'ai téléchargé les derniers outils Android SDK version 24.4.1. J'ai utilisé la ligne de commande pour installer les SDK. J'ai tapé y à la question

Acceptez-vous la licence 'Android-sdk-license-c81a61d9' [y/n] : y Après cela, l'installation a réussi.

Mais lorsque l'on utilise Gradle 3.1 pour construire, le message suivant s'affiche

Vous n'avez pas accepté les accords de licence des composants SDK suivants : [Android SDK Platform 23, Android SDK Build-Tools 23.0.1]. Avant de construire votre projet, vous devez accepter les accords de licence et terminer l'installation des composants manquants à l'aide du gestionnaire SDK d'Android Studio. Alternativement, pour savoir comment transférer les accords de licence d'un poste de travail à l'autre, rendez-vous à l'adresse suivante http://d.Android.com/r/studio-ui/export-licenses.html

J'ai vérifié ~/.android et /opt/android-sdk où sont placés les outils Android. Ils ne contiennent pas de dossier nommé licenses .

0 votes

Veuillez partager votre fichier build.gradle

1 votes

Si vous êtes sous Windows, assurez-vous d'exécuter en tant qu'administrateur.

0 votes

Vérifiez ici pour Ionic 4 freakyjolly.com/

968voto

Hugo Points 4965

La façon d'accepter les accords de licence à partir de la ligne de commande a changé. Vous pouvez utiliser le gestionnaire de SDK qui se trouve à l'adresse suivante : $ANDROID_SDK_ROOT/tools/bin

par exemple sur linux :

cd ~/Library/Android/sdk/tools/bin/

Exécutez le sdkmanager comme suit :

./sdkmanager --licenses

Par exemple, sous Windows :

cd /d "%ANDROID_SDK_ROOT%/tools/bin"

Exécutez le sdkmanager comme suit :

sdkmanager --licenses

Et acceptez les licences que vous n'avez pas encore acceptées (mais que vous devez accepter).

Pour plus de détails, voir le Documentation d'Android Studio bien que la documentation actuelle ne contienne pas de description sur le système de gestion de l'information. --licenses option.

Avertissement

Vous avez peut-être deux SDK Android sur votre machine. Assurez-vous de vérifier les deux ~/Library/Android/sdk et /usr/local/share/android-sdk ! Si vous n'êtes pas sûrs de vous, remplissez désinstaller Android Studio de votre machine et commencez avec une ardoise propre.

Mise à jour : ANDROID_HOME est déprécié, ANDROID_SDK_ROOT est maintenant la variable correcte

60 votes

J'ai accepté toutes les licences et j'ai reçu un message : Accept? (y/N): y All SDK package licenses accepted done mais l'erreur apparaît toujours.

8 votes

Nous avons découvert que nous avions deux SDK Android installés. Un qui était utilisé par Gradle et un autre géré par Android Studio. Il se peut que vous ayez le même problème.

0 votes

Hugo, où a été installé ce gradle ?

159voto

JustAnil Points 4635

Vous pouvez installer et accepter la licence du SDK et des outils de deux manières :

1. Ouvrir le GUI Android SDK Manager via la ligne de commande

Ouvrez le gestionnaire Android SDK via la ligne de commande en utilisant :

# Android SDK Tools 25.2.3 and lower - Open the Android SDK GUI via the command line
cd ~/Library/Android/sdk/tools && ./android

# 'Android SDK Tools' 25.2.3 and higher - `sdkmanager` is located in android_sdk/tools/bin/.
cd ~/Library/Android/sdk/tools/bin && ./sdkmanager

Voir plus de détails sur le nouveau sdkmanager .

Sélectionnez et installez les outils nécessaires. (votre emplacement peut être différent)

2. Installer et accepter la licence Android via la ligne de commande :

Mettez à jour les paquets via la ligne de commande, les termes et conditions vous seront présentés et vous devrez les accepter.

- Installer ou mettre à jour la dernière version

Cela va installer la dernière platform-tools au moment où vous l'exécutez.

# Android SDK Tools 25.2.3 and lower. Install the latest `platform-tools` for android-25
android update sdk --no-ui --all --filter platform-tools,android-25,extra-android-m2repository

# Android SDK Tools 25.2.3 and higher
sdkmanager --update

- Installer une version spécifique ( 25.0.1 , 24.0.1 , 23.0.1 )

Vous pouvez également installer une version spécifique comme suit :

# Build Tools 23.0.1, 24.0.1, 25.0.1
android update sdk --no-ui --all --filter build-tools-25.0.1,android-25,extra-android-m2repository
android update sdk --no-ui --all --filter build-tools-24.0.1,android-24,extra-android-m2repository
android update sdk --no-ui --all --filter build-tools-23.0.1,android-23,extra-android-m2repository
# Alter the versions as required                                     

# -u --no-ui  : Updates from command-line (does not display the GUI)
# -a --all    : Includes all packages (such as obsolete and non-dependent ones.)
# -t --filter : A filter that limits the update to the specified types of
#               packages in the form of a comma-separated list of
#               [platform, system-image, tool, platform-tool, doc, sample,
#               source]. This also accepts the identifiers returned by
#               'list sdk --extended'.

# List version and description of other available SDKs and tools
android list sdk --extended
sdkmanager --list

1 votes

Cela a fonctionné. Excellente réponse

1 votes

Cela a marché ! Excellente réponse !

0 votes

Merci beaucoup, je ne sais pas pourquoi mais l'utilisation de cette commande a fonctionné comme un charme et la licence est acceptée. Je viens de remplacer la version 25.0.1 par 25.0.2 pour la dernière version ;)

131voto

Shailendra Yadav Points 1008

Allez à votre $ANDROID_HOME/tools/bin et lancez le cmd

./sdkmanager --licenses

Acceptez toutes les licences qui y figurent.

Après cela, il suffit d'aller dans le dossier des licences du SDK et de vérifier qu'il contient ces cinq fichiers :

android-sdk-license, android-googletv-license, android-sdk-preview-license, google-gdk-license, mips-android-sysimage-license

Réessayez et construisez à nouveau, si Jenkins donne toujours le message 'licenses not accepted', alors vous devez donner la pleine permission à votre répertoire 'sdk' et à tous ses répertoires parents. Voici la commande :

sudo chmod -R 777 /opt/

Si vous avez sdk dans le répertoire /opt/.

20 votes

Dans le cas de Windows, le chemin serait le suivant - C:\Users\xxx\AppData\Local\Android\Sdk\tools\bin et commande sdkmanager --licenses``./ non nécessaire pour Windows.

0 votes

merci @garg10may de courir ./sdkmanager --licenses dans powershell a parfaitement fonctionné pour tous les SDKs que j'ai installés via Android Studio que j'ai installé uniquement pour utiliser Phonegap CLI - je n'ai aucun projet Android Studio

0 votes

@garg10may je n'ai pas de dossier bin sous le dossier tools sous windows10 que dois-je faire ?

63voto

Pour les utilisateurs de Windows qui n'utilisent pas Andoid Studio :

  1. Allez à l'emplacement de votre sdkmanager.bat fichier. Par défaut, il se trouve à Android\sdk\tools\bin à l'intérieur de la %LOCALAPPDATA% dossier.

  2. Ouvrez une fenêtre de terminal en tapant cmd dans la barre de titre.

  3. Type

    sdkmanager.bat --licenses
  4. Accepter toutes les licences avec 'y'.

1 votes

Je l'ai trouvé dans Program Files, et il n'a pas maintenu l'acceptation des licences jusqu'à ce que je l'exécute en tant qu'administrateur.

4 votes

Une chose à noter ici si vous êtes du Royaume-Uni, l'orthographe, assurez-vous d'épeler licenses à la manière américaine, pas licences comme nous le ferions au Royaume-Uni - une simple erreur qui m'a laissé perplexe pendant une minute, ne voyant pas la forêt pour les arbres.

0 votes

Si vous avez cette erreur dans Unity comme je l'ai fait. Redémarrez-le après avoir accepté les licences.

54voto

Joe V. Points 359

Mise à jour pour macOS Sierra 10.12.6 - Android Studio pour Mac 2.3.3

Localisez le fichier sdkmanager généralement sous :

/Users/YOUR_MAC_USER/Library/Android/sdk/tools/bin

./sdkmanager --licenses

Attention : File /Users/mtro.josevaler**strong text**io/.android/repositories.cfg n'a pas pu être chargé. 6 des 6 licences du paquet SDK n'ont pas été acceptées. Revoir les licences qui n'ont pas été acceptées (y/N) ? Y

Pour valider la disparition du problème, il suffit de répéter l'opération liée à la question de la licence.

0 votes

Je ne suis pas en mesure de localiser le dossier 'tools' présumé dans le répertoire Android/sdk... J'ai fait une recherche approfondie mais je ne l'ai pas trouvé. Je travaille sur Mac OS Mojave 10.14.4 et Android Studio 3.6.3. Vous pouvez nous aider ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X