[android] أيوني بناء الروبوت خطأ عند تحميل Gradle



7 Answers

نظرًا لأن الحل المنشور أعلاه يجب أن يتضمن .zip في مجلد يمثل حوالي 55 ميغابايت

يمكنك أيضًا فرض CLI لاستخدام Ant بدلاً من gradle أثناء الإنشاء باستخدام الأمر التالي:

cordova build android -- --ant
Question

أنا جديدة جدا على الأطر الأيونية :)

>npm install -g cordova
>npm install -g ionic
>ionic start test blank
>cd test
>ionic platform add android

عندما أستخدم " >ionic build android " بدء تحميل ، ولكن لا أستطيع تحميل والحصول على خطأ.

ما سبب هذا الخطأ وكيف يمكنني إصلاحه ؟!

أقوم بتنزيل Gradle وتثبيته على كمبيوتر شخصي ، ولكنه يريد تنزيله مرة أخرى. هل يمكنني إضافة Gradle إلى مشروع دون اتصال؟

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/distributions/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)



كان لدي نفس المشكلة ، وتم حلها مع إلغاء تثبيت أدوات الإنشاء 24 وتثبيت أدوات البنية 23 من إدارة SDK.




يبدو أن هناك مشكلة بالنسبة للحلول السابقة. على الأقل لم يعمل أي منهم لي ، وقمت بتغييره إلى:

var distributionUrl = 'http://localhost/gradle-2.2.1-all.zip';

ثم يعمل. لا أعرف لماذا يضيفون جميعهم "distributionUrl =" على النحو التالي (هذا لا يعمل بالنسبة لي):

 var distributionUrl = 'distributionUrl=http\\://localhost/gradle-2.2.1-all.zip';

راجع للشغل ، أنا أستخدم الأيونية 2.

انتبه إلى المسار إذا كنت لا تريد استخدام localhost . سيضيف تلقائيًا myApp/platforms/android/gradle/wrapper قبل distributionUrl ، على سبيل المثال إذا وضعت gradle-2.2.1-all.zip في دليل myApp/platforms/android/gradle ، فستحتاج إلى تعيين:

var distributionUrl = '../gradle-2.2.1-all.zip';



أدى تحديث نظام Android الأساسي إلى خداعي:

  • تحديث منصة قرطبة الروبوت
  • كوردوفا تستعد ،
  • كوردوفا ترجمة وأخيراً
  • بناء قرطبة



هذا بسبب خطأ Gradle.

قم بتنزيل الملف http://services.gradle.org/distributions/gradle-2.14.1-all.zip واستخراجه في أي من الدليل وقم بتعيين المسار عن طريق cmd المفتوح وأدخل: مسار setx (الدليل المستخرج) / bin

بعد ذلك ، أعد فتح CMD وتحقق مما إذا كان Gradle يعمل أم لا من خلال إصدار gradle -v . يظهر إخراج إصدار Gradle. الآن تم إصلاح الخطأ. تشغيل ionic build android .




Cordova 6.0.0 / Visual Studio Code 0.10.6

TL، DR

قم بتنزيل http://services.gradle.org/distributions/gradle-2.2.1-all.zip يدويًا.

appName\platforms\android\gradle\ في appName\platforms\android\gradle\

set CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=..\gradle-2.2.1-all.zip

بدء التعليمات البرمجية وتجميعها.

تفسير:

يعيّن GradleBuilder.js distributionUrl url كما يلي:

var distributionUrl = process.env ['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || من "http \: //services.gradle.org/distributions/gradle-2.2.1-all.zip '؛

يتم تشغيل البرنامج النصي في appName\platforms\android\gradle\wrapper

الإخراج هو:

تنزيل الملف: //appname/platforms/android/gradle/gradle-2.2.1-all.zip




خيار آخر من سطر الأوامر هو تشغيل $ export JAVA_OPTS="-Dhttp.proxyHost=proxy-url.com -Dhttp.proxyPort=911 -Dhttps.proxyHost=secure-proxy-url.com -Dhttps.proxyPort=911" قبل كوردوفا بناء القيادة.




جميع الإجابات هنا تقول كل شيء عندما يكون هذا أسهل من الإجابة الأعلى. يجب أن يعمل تحديث Android SDK على إصلاحه ، ويمكنك إجراء ذلك باستخدام هذا السطر من المحطة الطرفية:

android update sdk --no-ui --all --filter "extra-android-m2repository"

أو

android update sdk --no-ui --filter extra

انظر أيضا this القضية ريبوس (انها في الأساس نفس المشكلة).

ولكن بعد أن تقوم بإعادة البناء ، يجب أن تعمل.






Related