Ubuntu 16 / Cordova 6.4 / Android: impossible de résoudre com.android.tools.build:gradle

J’essaie d’utiliser Cordova 6.4 avec Android Studio sous Ubuntu 16 OS.

J’ai installé Android Studio correctement et télécharge le SDK.

Et le npm et cordova est également installé.


Et j’ai essayé de créer un projet:

cordova create myapp cd myapp cordova platform add android 

Et cela génère l’erreur suivante:

 Adding android project... Creating Cordova project for the Android platform: Path: platforms/android Package: io.cordova.hellocordova Name: HelloCordova Activity: MainActivity Android target: android-24 Subproject Path: CordovaLib Android project created with [email protected] Discovered plugin "cordova-plugin-whitelist" in config.xml. Adding it to the project Fetching plugin "cordova-plugin-whitelist@1" via npm Installing "cordova-plugin-whitelist" for android ANDROID_HOME=/home/alfred/Android/Sdk/ JAVA_HOME=/usr/lib/jvm/java-8-oracle Subproject Path: CordovaLib FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'android'. > Could not resolve all dependencies for configuration ':classpath'. > Could not resolve com.android.tools.build:gradle:2.2.0. Required by: :android:unspecified > Could not resolve com.android.tools.build:gradle:2.2.0. > Could not get resource 'https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.0/gradle-2.2.0.pom'. > Could not GET 'https://repo1.maven.org/maven2/com/android/tools/build/gradle/2.2.0/gradle-2.2.0.pom'. > sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certificateion path to requested target > Could not resolve com.android.tools.build:gradle:2.2.0. > Could not get resource 'https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.0/gradle-2.2.0.pom'. > Could not GET 'https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.0/gradle-2.2.0.pom'. > sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certificateion path to requested target * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 4.847 secs Failed to install 'cordova-plugin-whitelist':Error: /home/alfred/app/myapp/platforms/android/gradlew: Command failed with exit code 1 at ChildProcess.whenDone (/home/alfred/app/myapp/platforms/android/cordova/node_modules/cordova-common/src/superspawn.js:169:23) at emitTwo (events.js:106:13) at ChildProcess.emit (events.js:191:7) at maybeClose (internal/child_process.js:877:16) at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5) Failed to restore plugin "cordova-plugin-whitelist" from config.xml. You might need to try adding it again. Error: Error: /home/alfred/app/myapp/platforms/android/gradlew: Command failed with exit code 1 

Et si je lance cordova run android après cela, il dit toujours le bloc de Could not resolve com.android.tools.build:gradle:2.2.0. Erreur.

La même chose ne semblait pas se produire sous Windows.

J’ai cherché sur le Web sans succès. Quelqu’un sait comment?

L’article ci-dessous explique comment importer un certificate SSL d’un site sécurisé dans un environnement Java.

https://github.com/meteor/meteor/issues/6362#issuecomment-262684912


Étape 1: Télécharger le certificate

Téléchargez ce fichier.

Ou la même chose sur Mozilla Firefox:

Allez sur https://repo1.maven.org

  • Cliquez sur le cadenas vert à gauche de la barre d’adresse.
  • Cliquez sur Détails.
  • Cliquez sur Afficher le certificate.
  • Cliquez sur Détails.
  • Cliquez sur Exporter.
  • Exporter le fichier vers “Certificat X.509 (PEM) (* .crt; * .pem)”

Étape 2: Ajouter le certificate au magasin de clés Java par défaut

 sudo keytool -import -alias MavenRepo -keystore $JAVA_HOME/jre/lib/security/cacerts -file /PATH/TO/YOUR/EXPORTED/FILE.crt 

Votre variable $JAVA_HOME est normalement déclarée dans votre fichier .bashrc , vous pouvez donc utiliser cette commande en remplaçant simplement le paramètre /PATH/TO/YOUR/EXPORTED/FILE .

PS: le mot de passe par défaut du magasin de clés java est: changeit


Cela fait avancer la procédure, mais toujours pas résolu.

Finalement, j’ai résolu le problème en réinstallant le système d’exploitation.

Il semble que ce ne soit pas le cas avec Ubuntu ou Linux lui-même, Codova et Android Studio ont bien fonctionné dans Ubuntu après la réinstallation du système d’exploitation.