通過代理服務器使用npm、cordova等這樣的工具時會遇到一些麻煩,折騰了幾天大概記錄一下步驟,便於以后再遇到時查閱:
步驟
1、下載nodejs
2、配置npm代理、設置taobao源
3、安裝npm install cordova
4、下載android studio,以便獲的最新的android sdk
可通過設置環境變量ANDROID_HOME指定,例如D:\Program Files\Android\sdk
5、運行打包 cordova build android , 會提示下載gradle-2.2.1-all.zip失敗。
手動通過翻牆或download.csdn.net下載。在用戶目錄下搜索 gradle-2.2.1-all.zip.part ,
例如我的路徑為: D:\user\.gradle\wrapper\dists\gradle-2.2.1-all\2m8005s69iu8v0oiejfej094b\gradle-2.2.1-all.zip.part
並將手動下載的gradle-2.2.1-all.zip復制到同文件夾。再次運行命令后cordova會自動解壓zip。
6、如有nexus私有倉庫則修改F:\workspace\cordova\dcapp\platforms\android\build.gradle文件中的maven倉庫url
allprojects { repositories { maven { url "http://10.98.65.55:8081/nexus/content/repositories/Central/" } } } buildscript { repositories { //mavenCentral() maven{ url 'http://10.98.65.55:8081/nexus/content/repositories/nexus-osc/'} } …… } repositories { //mavenCentral() maven{ url 'http://10.98.65.55:8081/nexus/content/repositories/nexus-osc/'} }
7、在build.gradle同級目錄創建gradle.properties 設置代理服務器
systemProp.http.proxyHost=127.0.0.1 systemProp.http.proxyPort=8000 systemProp.https.proxyHost=127.0.0.1 systemProp.https.proxyPort=8000 systemProp.http.nonProxyHosts=10.*|localhost
8、運行cordova build android 生成
錯誤提示
F:\workspace\cordova\dcapp>cordova build android Running command: F:\workspace\cordova\dcapp\platforms\android\cordova\build.bat ANDROID_HOME=D:\Program Files\Android\sdk JAVA_HOME=D:\java\jdk1.7.0 Running: F:\workspace\cordova\dcapp\platforms\android\gradlew cdvBuildDebug -b F :\workspace\cordova\dcapp\platforms\android\build.gradle -Dorg.gradle.daemon=tru e FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'android'. > A problem occurred configuring project ':CordovaLib'. > Could not resolve all dependencies for configuration ':CordovaLib:classpath '. > Could not resolve com.android.tools.build:gradle:1.0.0+. Required by: android:CordovaLib:unspecified > Failed to list versions for com.android.tools.build:gradle. > Unable to load Maven meta-data from https://repo1.maven.org/maven2 /com/android/tools/build/gradle/maven-metadata.xml. > Could not GET 'https://repo1.maven.org/maven2/com/android/tools /build/gradle/maven-metadata.xml'. > Connection to https://repo1.maven.org refused * 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: 2.299 secs F:\workspace\cordova\dcapp\platforms\android\cordova\node_modules\q\q.js:126 throw e; ^ Error code 1 for command: cmd with args: /s /c "F:\workspace\cordova\dcapp\platf orms\android\gradlew cdvBuildDebug -b F:\workspace\cordova\dcapp\platforms\andro id\build.gradle -Dorg.gradle.daemon=true" ERROR building one of the platforms: Error: F:\workspace\cordova\dcapp\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: F:\workspace\cordova\dcapp\platforms\android\cordova\build.bat: Command f ailed with exit code 1 at ChildProcess.whenDone (C:\Users\Administrator\AppData\Roaming\npm\node_mo dules\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)
參考資料
gradle build failure Connection to https://repo1.maven.org refused - Stack Overflow
http://stackoverflow.com/questions/30526575/gradle-build-failure-connection-to-https-repo1-maven-org-refused