Je suis très nouveau dans le ionic framework 🙂
>npm install -g cordova >npm install -g ionic >ionic start test blank >cd test >ionic platform add android
Lorsque j’utilise ” >ionic build android
“, lancez le téléchargement, mais je ne peux pas télécharger et obtenir une erreur.
Quelle est la cause de cette erreur et comment puis-je la réparer?!
Je télécharge Gradle et je l’installe sur un PC, mais je souhaite le télécharger à nouveau. Puis-je append Gradle à un projet hors ligne?
C:\Users\LENOVO2014\test>ionic build android running cordova build android Running command: "C:\Program Files\nodejs\node.exe" C:\Users\LENOVO2014\myApp\ho oks\after_prepare\010_add_platform_class.js C:\Users\LENOVO2014\myApp add to body class: platform-android Running command: C:\Users\LENOVO2014\myApp\platforms\android\cordova\build.bat ANDROID_HOME=D:\program\Programing\Android\sdk JAVA_HOME=C:\Program Files\Java\jdk1.8.0_31 Running: C:\Users\LENOVO2014\myApp\platforms\android\gradlew cdvBuildDebug -b C: \Users\LENOVO2014\myApp\platforms\android\build.gradle -Dorg.gradle.daemon=true Downloading http://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip ................................................................................ ................................................................................ ................................................................................ ............................................ Exception in thread "main" java.lang.RuntimeException: java.net.SocketException: Connection reset at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAcc essManager.java:78) at org.gradle.wrapper.Install.createDist(Install.java:47) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48) Caused by: java.net.SocketException: Connection reset at java.net.SocketInputStream.read(SocketInputStream.java:189) at java.net.SocketInputStream.read(SocketInputStream.java:121) at java.io.BufferedInputStream.read1(BufferedInputStream.java:284) at java.io.BufferedInputStream.read(BufferedInputStream.java:345) at sun.net.www.MeteredStream.read(MeteredStream.java:134) at java.io.FilterInputStream.read(FilterInputStream.java:133) at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(Http URLConnection.java:3335) at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.read(Http URLConnection.java:3328) at org.gradle.wrapper.Download.downloadInternal(Download.java:63) at org.gradle.wrapper.Download.download(Download.java:45) at org.gradle.wrapper.Install$1.call(Install.java:60) at org.gradle.wrapper.Install$1.call(Install.java:47) at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAcc essManager.java:65) ... 3 more C:\Users\LENOVO2014\myApp\platforms\android\cordova\node_modules\q\q.js:126 throw e; ^ Error code 1 for command: cmd with args: /s /c "C:\Users\LENOVO2014\myApp\platfo rms\android\gradlew cdvBuildDebug -b C:\Users\LENOVO2014\myApp\platforms\android \build.gradle -Dorg.gradle.daemon=true" ERROR building one of the platforms: Error: C:\Users\LENOVO2014\myApp\platforms\ android\cordova\build.bat: Command failed with exit code 1 You may not have the required environment or OS to build this project Error: C:\Users\LENOVO2014\myApp\platforms\android\cordova\build.bat: Command fa iled with exit code 1 at ChildProcess.whenDone (C:\Users\LENOVO2014\AppData\Roaming\npm\node_modul es\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:131:23) at ChildProcess.emit (events.js:110:17) at maybeClose (child_process.js:1015:16) at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
J’utilise la version ionique 1.7.14 et la dissortingbutionUrl dans le fichier suivant. myApp/platforms/android/cordova/lib/builders/GradleBuilder.js.
Je devais pointer le gradin téléchargé localement comme spécifié dans cette réponse.
J’ai eu le même problème. J’ai ajouté graduellement à mon projet hors ligne.
Après le téléchargement de gradle du lien émis (voici http://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip ) collez-le quelque part comme myApp\platforms\android\gradle\gradle-2.2.1-all.zip
et dans build.js de myApp\platforms\android\cordova\lib\build.js
trouver ceci:
var dissortingbutionUrl = 'dissortingbutionUrl=http\\://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip';
Et remplacez-le par l’emplacement de votre propre fichier:
var dissortingbutionUrl = 'dissortingbutionUrl=../gradle-2.2.1-all.zip';
Étant donné que la solution publiée ci-dessus doit inclure .zip dans un dossier d’environ 55 Mo
Vous pouvez également forcer CLI à utiliser Ant au lieu de graduer pendant une génération avec la commande suivante:
cordova build android -- --ant
J’ai rencontré ce problème car notre proxy réseau bloque le téléchargement du fichier zip. Voici ce que j’ai trouvé:
NOTE: cela diffère de la réponse “acceptée” en ce sens que nous ne modifions pas directement la bibliothèque de Cordova. Ceci est beaucoup moins sujet à “erreur” ou à être écrasé lorsque vous exécutez
ionic state restore
Téléchargez gradle – http://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip
Placez ce fichier dans les platforms/android/gradle
. Cependant, si vous l’intégrez dans votre processus de génération, vous pouvez souhaiter le placer dans un endroit moins instable et append une étape pour copier le fichier dans cet emplacement.
Définissez la variable d’environnement CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL
sur ../gradle-2.2.1-all.zip
export CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL="../gradle-2.2.1-all.zip"
à votre fichier ~ / .bashrc setx CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL ../gradle-2.2.1-all.zip
Exécuter ionic build android
Une autre option de la ligne de commande consiste à exécuter $ export JAVA_OPTS="-Dhttp.proxyHost=proxy-url.com -Dhttp.proxyPort=911 -Dhttps.proxyHost=secure-proxy-url.com -Dhttps.proxyPort=911"
avant le commande de construction de cordova.
Si vous devez utiliser un proxy sur votre réseau, ajoutez un fichier gradle.properties
dans %USER_HOME%/.gradle
avec le %USER_HOME%/.gradle
ci-dessous, mais en remplaçant les valeurs par celles de votre proxy. Cela a fonctionné pour moi.
gradlePropertiesProp=gradlePropertiesValue sysProp=shouldBeOverWrittenBySysProp envProjectProp=shouldBeOverWrittenByEnvProp systemProp.system=systemValue systemProp.http.proxyHost=myproxy.com systemProp.http.proxyPort=8080 systemProp.http.nonProxyHosts=\*.mydomain.com|localhost systemProp.https.proxyHost=myproxy.com systemProp.https.proxyPort=8080 systemProp.https.nonProxyHosts=\*.mydomain.com|localhost
Cordova 6.0.0 / Visual Studio Code 0.10.6
TL; DR
Téléchargez manuellement http://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip
.
Placez-le dans appName\platforms\android\gradle\
set CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=..\gradle-2.2.1-all.zip
Commencez le code et comstackz.
Explication:
GradleBuilder.js définit la dissortingbutionUrl
comme suit:
var dissortingbutionUrl = process.env [‘CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL’] || ‘http \: //services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip’;
Le script s’exécute dans appName\platforms\android\gradle\wrapper
Le résultat est:
Téléchargement du fichier: //appname/platforms/android/gradle/gradle-2.2.1-all.zip
Salut à tous j’ai eu le même problème.
Dans le fichier plates-formes \ android \ cordova \ lib \ build.js, j’ai changé
var dissortingbutionUrl = 'dissortingbutionUrl=http\\://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip';
à
var dissortingbutionUrl = 'dissortingbutionUrl=http://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip';
et ça a fonctionné.
J’ai eu le même problème, et il a été résolu avec la désinstallation de build-tools 24 et l’installation de build-tools 23 à partir de SDK Manager.
Alternativement, si vous avez un serveur web sur votre localhost, téléchargez et mettez le gradle (exactement la version testée, c’est-à-dire http://downloads.gradle.org/dissortingbutions/gradle-2.2.1-all.zip au moment de cette opération). post) dans la racine www et remplacez le fichier plates-formes \ android \ cordova \ lib \ build.js dans votre répertoire d’application par celui-ci:
var dissortingbutionUrl = 'dissortingbutionUrl=http\\://localhost/gradle-2.2.1-all.zip';
Changer l’URL en un fichier local (pas une adresse http) ne fonctionnerait pas pour moi sous Windows et il se plaindrait que l’URL ait un protocole inconnu.
Il semble y avoir un problème pour les solutions précédentes. Au moins aucun d’entre eux n’a fonctionné pour moi, et je viens de le changer pour:
var dissortingbutionUrl = 'http://localhost/gradle-2.2.1-all.zip';
Alors ça marche. Je ne sais pas pourquoi ils ajoutent tous “dissortingbutionUrl =” comme suit (cela ne fonctionne pas pour moi):
var dissortingbutionUrl = 'dissortingbutionUrl=http\\://localhost/gradle-2.2.1-all.zip';
BTW, j’utilise ionique 2.
Faites attention au chemin si vous ne voulez pas utiliser localhost
. Il appenda automatiquement myApp/platforms/android/gradle/wrapper
avant dissortingbutionUrl, par exemple si vous placez gradle-2.2.1-all.zip dans le myApp/platforms/android/gradle
, vous devez alors définir:
var dissortingbutionUrl = '../gradle-2.2.1-all.zip';
J’ai rencontré le même problème récemment et j’ai cherché ici et là.
Enfin, pour la dernière version, j’ai trouvé la solution.
Après la commande “ionic platform add android”, accédez à plates-formes / android / cordova / lib / builders / GradleBuilder.js
Rechercher
http\\://services.gradle.org/dissortingbutions/gradle-2.2.1-all.zip
et le changer pour
http\\://downloads.gradle.org/dissortingbutions/gradle-2.2.1-all.zip
Toutes les réponses ici disent toutes la même chose quand cela pourrait être fait plus facilement que la meilleure réponse. La mise à jour de votre SDK Android devrait résoudre ce problème et vous pouvez le faire avec cette seule ligne depuis le terminal:
android update sdk --no-ui --all --filter "extra-android-m2repository"
ou
android update sdk --no-ui --filter extra
Voir aussi ce problème de repos (c’est essentiellement le même problème).
Mais après cela, reconstruisez et cela devrait fonctionner.
Il semble que Windows Defender ou un autre système antivirus perturbe votre installation. Désactivez donc temporairement votre pare-feu et relancez la commande:
ionic build android (or ios)
A la fin, vous avez le message BUILD SUCCESSFUL …
En ce qui concerne le développement ionique, vous devrez modifier la dissortingbutionURL dans GradleBuilder.js avec l’URL mentionnée ci-dessous.
/android/cordova/lib/builders/GradleBuilder.js
var dissortingbutionUrl = process.env [‘CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL’] || ‘https://services.gradle.org/dissortingbutions/gradle-2.14.1-all.zip’;
La mise à jour de la plate-forme Android a fait l’affaire:
Ceci est dû à une erreur Gradle.
Téléchargez le fichier http://services.gradle.org/dissortingbutions/gradle-2.14.1-all.zip et extrayez-le dans n’importe quel répertoire et définissez le chemin par open cmd et entrez: setx path (répertoire extrait) / bin
Après cela, rouvrez cmd et vérifiez si Gradle fonctionne ou non en lançant gradle -v
. Il montre la sortie de la version Gradle. Maintenant, l’erreur est corrigée. exécuter ionic build android
.
Téléchargez JDK version 8 et supprimez toutes les versions existantes.
Et mise à jour ionique.
J’espère que votre problème sera résolu.