2016-05-20 11 views
4

Hallo Gebäude Ich versuche, ein cordova Projekt mit Android-Plugin in Windows 7 mit die folgenden UmgebungFehler, wenn ein Cordova Android Projektes

ANDROID_HOME=D:\DevTools\Android\Android_SDK_NDK\android-sdk 
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45 

i ein

cordova Projekt
>cordova create CordovaProject io.xyz.hellocordova CordovaApp 

erzeugt zu bauen und fügte das android plugin hinzu

>cordova platform add android 

jetzt nach dem tun es ried das Android-Projekt erstellen

>cordova build android 

dies versucht gradle-2.2.1-all.zip zum Download, die als

E:\Cordova\Workspace\HelloCordova>cordova build android --verbose 
Executing "before_build" hook for all plugins. 
Executing "before_prepare" hook for all plugins. 
Searching PlatformJson files for differences between project vs. platform instal 
led plugins 
No differences found between project and android platform. Continuing... 
Generating config.xml from defaults for platform "android" 
Wrote out Android application name to "HelloCordova" 
Wrote out Android package name to "com.gowtham.HelloCordova" 
This app does not have launcher icons defined 
updated project successfully 
Executing "after_prepare" hook for all plugins. 
Executing "before_compile" hook for all plugins. 
ANDROID_HOME=D:\DevTools\Android\Android_SDK_NDK\android-sdk 
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45 
Downloading http://services.gradle.org/distributions/gradle-2.2.1-all.zip 

Exception in thread "main" java.lang.RuntimeException: java.net.ConnectException 
: Connection timed out: connect 
     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.ConnectException: Connection timed out: connect 
     at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
     at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketI 
mpl.java:79) 
     at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.ja 
va:339) 
     at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocket 
Impl.java:200) 
     at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java 
:182) 
     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) 
     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
     at java.net.Socket.connect(Socket.java:579) 
     at java.net.Socket.connect(Socket.java:528) 
     at sun.net.NetworkClient.doConnect(NetworkClient.java:180) 
     at sun.net.www.http.HttpClient.openServer(HttpClient.java:432) 
     at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) 
     at sun.net.www.http.HttpClient.<init>(HttpClient.java:211) 
     at sun.net.www.http.HttpClient.New(HttpClient.java:308) 
     at sun.net.www.http.HttpClient.New(HttpClient.java:326) 
     at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLC 
onnection.java:996) 
     at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConne 
ction.java:932) 
     at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection 
.java:850) 
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLCon 
nection.java:1300) 
     at org.gradle.wrapper.Download.downloadInternal(Download.java:59) 
     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 
Error: Error code 1 for command: cmd with args: /s,/c,"E:\Cordova\Workspace\Hell 
oCordova\platforms\android\gradlew cdvBuildDebug -b E:\Cordova\Workspace\HelloCo 
rdova\platforms\android\build.gradle -Dorg.gradle.daemon=true -Pandroid.useDepre 
catedNdk=true" 

E:\Cordova\Workspace\HelloCordova>gradle -version 

------------------------------------------------------------ 
Gradle 2.2.1 
------------------------------------------------------------ 

Build time: 2014-11-24 09:45:35 UTC 
Build number: none 
Revision:  6fcb59c06f43a4e6b1bcb401f7686a8601a1fb4a 

Groovy:  2.3.6 
Ant:   Apache Ant(TM) version 1.9.3 compiled on December 23 2013 
JVM:   1.7.0_45 (Oracle Corporation 24.45-b08) 
OS:   Windows 7 6.1 x86 

zu Ausnahme führt möglicherweise war dies aufgrund meiner Büro-Firewall/Proxy, der es nicht erlaubt, die Zip-Datei herunterzuladen. aber ich habe die Zip-Datei extrahiert und den Pfad-Variable als

GRADLE_HOME = C: \ gradle-2.2.1

auch, dass ich nicht in der Lage dieses Problem auch bin zu lösen. Ich verstehe, dass das env. Pfadvariable wird im Build-Skript nicht akzeptiert, aber ich bin mir nicht sicher, wo ich diesen Schritt ändern oder umgehen soll.

Antwort

13

Wie Sie erwähnt haben, sieht es eher wie ein Netzwerkproblem aus. Der Download wird fehlschlagen, wenn Sie ein eingeschränktes Proxy-Netzwerk verwenden. Im Falle von Netzwerk-Einschränkungen, können Sie dieses Problem umgehen, indem Sie die folgenden Schritte:

1) Download the required gradle version zip file from gradle distribution link and save it in local folder.

2) Navigate to PROJECT_ROOT_FOLDER/platforms/android/cordova/lib/builders folder and edit GradleBuilder.js file

3) Change the line from var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'http\\://services.gradle.org/distributions/gradle-2.2.1-all.zip'; to 'var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'file:///local/path/to/folder/where/gradle/zip/is/saved/gradle-2.2.1-all.zip'; and save the file

4) Try rebuilding android build.

Sie auch die folgenden so schnell versuchen kann fix,

1) In command prompt execute the following command: export CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL=file:///local/path/to/folder/where/gradle/zip/is/saved/gradle-2.2.1-all.zip

2) Execute the following command: cordova run android

+0

Danke @Gandhi, funktioniert super ... !!!. Ich habe einfach das env gesetzt. Pfadvariable wie du erwähnt hast .. CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL = file: ///local/path/to/folder/where/gradle/zip/is/saved/gradle-2.2.1-all.zip –

+0

@Gowtham Schön, dass es funktioniert hat. Glückliche Kodierung. Prost – Gandhi

+0

@Gandhi Danke für Ihre Hilfe. –

2

Sie müssen durch das Hinzufügen dieser Zeilen zu ~/.gradle/gradle.properties (erstellen Sie die Datei, wenn sie nicht vorhanden ist), um die gradle Proxy einzustellen:

systemProp.http.proxyHost=myproxy.com 
systemProp.http.proxyPort=123 
systemProp.https.proxyHost=myproxy.com 
systemProp.https.proxyPort=123 

Ersetzen Sie Ihren Proxy und den Port, natürlich.

+0

Ich habe keinen direkten Proxy-Host und Port ... Mein Netzwerk-Proxy ist auf automatische Konfiguration Skript funktioniert mit * .pac-Datei. Ich denke, das Problem lag daran, dass ich kein zip-Archiv herunterladen konnte. Ich habe auch keine grddle.properties unter .digle-Ordner. Wie ich oben erwähnt habe, habe ich es separat heruntergeladen und meinen Downloadpfad auf diesen Dateipfad gesetzt. Danke für die Hilfe.. –

0

Ich hatte das gleiche Problem, wenn ich den Befehl Cordova Build Android es durch diesen Fehler ausführen. Ich wurde mehr versucht, dass 1hour schließlich ich meine Antivirus-Software (Avast) deaktivieren und nur den Befehl erneut ausführen, jetzt wurde es erfolgreich ausgeführt.

Verwandte Themen