web-dev-qa-db-fra.com

Ionic 3 erreur de concordance du projet et du plugin

J'ai un projet Ionic 3, quand je lance "ionic cordova run Android --prod" je vois

Cette erreur:

Android_HOME=C:\Users\asus\AppData\Local\Android\sdk\ 
Java_HOME=C:\Program Files\Java\jdk1.8.0_131\  
Subproject Path: CordovaLib null 
The Task.leftShift(Closure) method has been deprecated and 
is scheduled to be removed in Gradle 5.0. Please use 
Task.doLast(Action) instead.
        at build_86b8k75dm7qqz7n5jyg9xp8kh.run(D:\project\ionic\MyProject\platforms\Android\build.gradle:138) org.xwalk:xwalk_core_library:23+ The JavaCompile.setDependencyCacheDir() method has been deprecated and is scheduled to be removed in Gradle 4.0.

Incremental Java compilation is an incubating feature. The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInp uts.file(Object).skipWhenEmpty() instead.

FAILURE: Build failed with an exception.

* What went wrong:

BUILD FAILED

Total time: 15.644 secs A problem occurred configuring root project 'Android'.
> Could not resolve all dependencies for configuration ':_armv7DebugApkCopy'.
   > Could not resolve org.xwalk:xwalk_core_library:23+.
     Required by:
         project :
      > Could not resolve org.xwalk:xwalk_core_library:23+.
         > Failed to list versions for org.xwalk:xwalk_core_library.
            > Unable to load Maven meta-data from https://download.01.org/crosswalk/releases/crosswalk/Android/maven2/org /xwalk/xwalk_core_library/maven-metadata.xml.
               > Could not GET 'https://download.01.org/crosswalk/releases/crosswalk/Android/maven2/org/xwalk/xwalk_core_ library/maven-metadata.xml'. Received status code 503 from server: Service Unavailable

* Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Error: cmd: Command failed with exit code 1 Error output: FAILURE: Build failed with an exception.

* What went wrong: A problem occurred configuring root project 'Android'.
> Could not resolve all dependencies for configuration ':_armv7DebugApkCopy'.
   > Could not resolve org.xwalk:xwalk_core_library:23+.
     Required by:
         project :
      > Could not resolve org.xwalk:xwalk_core_library:23+.
         > Failed to list versions for org.xwalk:xwalk_core_library.
            > Unable to load Maven meta-data from https://download.01.org/crosswalk/releases/crosswalk/Android/maven2/org /xwalk/xwalk_core_library/maven-metadata.xml.
               > Could not GET 'https://download.01.org/crosswalk/releases/crosswalk/Android/maven2/org/xwalk/xwalk_core_ library/maven-metadata.xml'. Received status code 503 from server: Service Unavailable

* Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.


[ERROR] Cordova encountered an error.
        You may get more insight by running the Cordova command above directly.

[ERROR] An error occurred while running cordova run Android (exit code 1).

Je n'ai pas reçu cette erreur avant d'exécuter Ionic.

15
asv

Le serveur 01.org semble être en panne. Donc, jusqu'à ce que les serveurs soient de nouveau en ligne, vous pouvez demander à Gradle d'utiliser la copie locale de Crosswalk.

J'avais le même problème depuis une heure. La solution suivante a fonctionné pour moi.

Ouvrez plates-formes\Android\cordova-plugin-crosswalk-webview\* - xwalk.gradle fichier dans le répertoire de votre projet, où * est le nom de votre projet.

Recherchez la section -

dependencies {
    compile xwalkSpec
}

Remplacez-le par votre version exacte de Crosswalk que vous trouverez dans Chrome Developer Tools en tapant window.navigator.userAgent dans votre console Developer Tools.

Vos données finales ressembleraient donc à ceci -

dependencies {
    compile 'org.xwalk:xwalk_core_library:23.53.589.4'
}
27
hemantv

1 Get crosswalk version

Il existe deux autres façons d'obtenir la version de xwalk_core_library, vous pouvez utiliser l'une ou l'autre:

  • Allez sur les plateformes/Android/build/intermediates/exploded-aar/org.xwalk‌/xwalk_core_library/‌, puis vous pouvez voir une version comme 19.49.514.5

  • Dans le cache Google , vous pouvez sélectionner un numéro de version

2 Change the gradle

Tout comme @hemantv l'a dit, dans les plates-formes de fichiers \Android\cordova-plugin-crosswalk-webview * -xwalk.gradle

Changer le formulaire du fichier

dependencies {
    compile xwalkSpec
}

à

dependencies {
    compile 'org.xwalk:xwalk_core_library:19.49.514.5'
}

19.49.514.5 est la version obtenue à partir de la première étape.


Une autre façon, vous pouvez utiliser ce plugin temporairement:

cordova plugin add https://github.com/zhouzhongyuan/cordova-plugin-crosswalk-webview

Il vient de corriger cette erreur.

8
Zhongyuan Zhou

Obtenez la version Crosswalk

Comme l'a répondu Zhongyuan Zhou, il existe des moyens d'obtenir la bibliothèque Crosswalk enregistrée localement sur votre projet, mais je préfère ce qui suit:

Aller à platforms/Android/build/intermediates/exploded-aar/org.xwalk‌​/xwalk_core_library/‌, Alors vous pouvez voir une version comme 22.52.561.4

Modifier config.xml

Ajoutez ce qui suit dans votre config.xml

<preference name="xwalkVersion" value="xwalk_core_library:22.52.561.4" />

Compilez le Android build

Faites l'habituel ionic cordova build Android pour créer le Android APK ou ionic cordova run Android pour créer et exécuter/installer l'application Android Android sur un émulateur ou un appareil.

Référence: https://forum.ionicframework.com/t/server-error-with-crosswalk-when-running-ionic-run-Android/104009/15

3
Charlie Ang

Ceci fait suite à la réponse de hemantv. Je paniquais, mais sa réponse m'a sauvé la journée et j'ai réussi à compiler l'application en utilisant le xwalk stocké localement.

C'est ce que j'ai fait et j'espère que cela aide quelqu'un qui est aux prises avec la même situation.

J'ai découvert la version de Crosswalk que j'ai stockée localement en exécutant une recherche (y compris les sous-répertoires) pour "xwalk_core_library" dans mon répertoire d'application et j'ai trouvé le fichier "org.xwalk-xwalk_core_library-17.46 .448.10_9bf812c8b76a44fdb31553d48df45b60d1362adc.jar "et compris que la version que j'avais était" org.xwalk-xwalk_core_library-17.46.448.1 "(tout après le trait de soulignement" _ "n'est pas pertinent)

J'ai suivi les instructions et ouvert le plates-formes\Android\cordova-plugin-crosswalk-webview * -xwalk.gradle dans un éditeur de texte

a trouvé

dependencies {
    compile xwalkSpec
}

remplacé par

dependencies {    
    compile 'org.xwalk:xwalk_core_library:17.46.448.10'
}

réessayé de compiler et cela a fonctionné comme un charme.

1
Scorpio Theory