javascript - 使用 Apache Cordova 时无法在 Visual Studio 2017 中构建应用程序
问题描述
我正在尝试为我的项目获取 .apk。我在 Visual Studio 2017 中使用 Apache Cordova。当我尝试构建我的解决方案时,它总是会出现一些错误。我安装了 Gradle,Java 开发工具包。我有最新版本的 Cordova。项目非常简单。我使用了一些脚本和 html 元素。但总是我得到错误。我只是尝试将默认文件与我的文件结合起来,看看我是否错误地做错了什么。它没有改变。我什至尝试构建默认项目。这是我简单地合并文件而没有太多更改时得到的结果。我总是收到 31 个错误。这是我的错误列表:
Severity Code Description Project File Line Suppression State
Error Picked up _JAVA_OPTIONS: -Xmx512M Colors 1
Error Exception in thread "main" java.lang.RuntimeException: java.io.IOException: Server returned HTTP response code: 403 for URL: http://services.gradle.org/distributions/gradle-2.13-all.zip Colors 1
Error at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:78) Colors 1
Error at org.gradle.wrapper.Install.createDist(Install.java:47) Colors 1
Error at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129) Colors 1
Error at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48) Colors 1
Error Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://services.gradle.org/distributions/gradle-2.13-all.zip Colors 1
Error at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1919) Colors 1
Error at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1515) Colors 1
Error at org.gradle.wrapper.Download.downloadInternal(Download.java:59) Colors 1
Error at org.gradle.wrapper.Download.download(Download.java:45) Colors 1
Error at org.gradle.wrapper.Install$1.call(Install.java:60) Colors 1
Error at org.gradle.wrapper.Install$1.call(Install.java:47) Colors 1
Error at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65) Colors 1
Error ... 3 more Colors 1
Error Error: cmd: Command failed with exit code 1 Error output: Colors 1
Error Picked up _JAVA_OPTIONS: -Xmx512M Colors 1
Error Exception in thread "main" java.lang.RuntimeException: java.io.IOException: Server returned HTTP response code: 403 for URL: http://services.gradle.org/distributions/gradle-2.13-all.zip Colors 1
Error at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:78) Colors 1
Error at org.gradle.wrapper.Install.createDist(Install.java:47) Colors 1
Error at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129) Colors 1
Error at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48) Colors 1
Error Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://services.gradle.org/distributions/gradle-2.13-all.zip Colors 1
Error at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1919) Colors 1
Error at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1515) Colors 1
Error at org.gradle.wrapper.Download.downloadInternal(Download.java:59) Colors 1
Error at org.gradle.wrapper.Download.download(Download.java:45) Colors 1
Error at org.gradle.wrapper.Install$1.call(Install.java:60) Colors 1
Error at org.gradle.wrapper.Install$1.call(Install.java:47) Colors 1
Error at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65) Colors 1
Error ... 3 more Colors 1
我对所有这些事情都是新手。我错过了什么吗?我应该安装一些额外的插件或工具吗?
解决方案
有一些简单的步骤可以修复错误。
1)platforms\android\cordova\lib\builders\GradleBuilder.js
使用文本编辑器查找并打开文件。
找到线
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'http\\://services.gradle.org/distributions/gradle-2.13-all.zip';
然后在这一行更改http
为https
:
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-2.13-all.zip';
然后保存文件。
2)检查已安装的 jdk 版本,如果未安装则安装jdk 1.8 。
然后,如果环境变量在 Visual StudioJAVA_HOME
中没有1.8
打开,请选中复选框并选择 java 1.8 文件夹,如下所示:tools->options->Tools for Apache Cordova->Environment Variable Overrides
JAVA_HOME
C:\Program Files\Java\jdk1.8.0_241
然后运行构建它会工作。
推荐阅读
- rust - 为什么使用 Option unwrap 不移动值?
- php - 将新订单项目添加到现有 Woocommerce 订单时出错
- arduino - 尝试使用 Arduino Nano 让 OLED 显示来自超声波范围传感器的输入
- mips - 如何在mips中读取多个字符的字符串
- javascript - vue单文件组件方式调用子组件方法
- python - 如何在groupby期间将日期字符串转换为agg函数中的日期时间
- wordpress - 使用 Redux Framework _WordPress 创建子菜单
- python - 绘制租金图
- python - 如何将具有相同索引(MultiIndex之一)的行值转换为列
- php - 如何在不使用循环的情况下在 PHP 中向多维添加新的键和值......?