【问题标题】:gradle: not installed (cordova requirements)gradle:未安装(cordova 要求)
【发布时间】:2018-11-02 04:41:20
【问题描述】:

我试着输入:

科尔多瓦要求

结果如下:

检测到 Android Studio 项目
android 的需求检查结果:
Java JDK:已安装 1.8.0
Android SDK:已安装 true
Android 目标:安装 android-27,android-26
Gradle:未安装
无法读取未定义的属性“长度”
(node:2392) UnhandledPromiseRejectionWarning: CordovaError: 一些需求检查失败
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\src\cli.js:414:27
在 _fulfilled (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:787:54)
在 self.promiseDispatch.done (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:816:30)
在 Promise.promise.promiseDispatch (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:749:13)
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:557:44
刷新时 (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:108:17)
在 _combinedTickCallback (internal/process/next_tick.js:131:7)
在 process._tickCallback (internal/process/next_tick.js:180:9)
(节点:2392)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝编号:1)
(节点:2392)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程

所以我尝试手动安装 gradle。安装 gradle 后,我尝试输入:

gradle -v

然后给出结果:

----------------------------------- -------------
Gradle 4.7
-------------------------------------------------- ----------
构建时间:2018-04-18 09:09:12 UTC
修订: b9a962bf70638332300e7f810689cb2febbd4a6c
Groovy:2.4.12
Ant:2017 年 2 月 2 日编译的 Apache Ant(TM) 版本 1.9.9
JVM:1.8.0_162(甲骨文公司 25.162-b12)
操作系统:Windows 7 6.1 amd64

这意味着 gradle 已安装。但是当我尝试再次使用类型来满足要求时:

科尔多瓦要求

它仍然给我和以前一样的结果:

检测到 Android Studio 项目
android 的需求检查结果:
Java JDK:已安装 1.8.0
Android SDK:已安装 true
Android 目标:安装 android-27,android-26
Gradle:未安装
无法读取未定义的属性“长度”
(node:2392) UnhandledPromiseRejectionWarning: CordovaError: 一些需求检查失败
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\src\cli.js:414:27
在 _fulfilled (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:787:54)
在 self.promiseDispatch.done (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:816:30)
在 Promise.promise.promiseDispatch (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:749:13)
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:557:44
刷新时 (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:108:17)
在 _combinedTickCallback (internal/process/next_tick.js:131:7)
在 process._tickCallback (internal/process/next_tick.js:180:9)
(节点:2392)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝编号:1)
(节点:2392)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程

然后,我再次尝试使用命令在 cmd 中安装 gradle:

npm install gradle

结果如下:

+gradle@1.0.9
在 182.961 秒内添加了来自 14 个贡献者的 20 个包
[!] 发现 13 个漏洞 [已审核 4232 个包]
严重性 2 低 | 11 中等
运行“npm audit”以获取更多详细信息

然后我再次尝试检查需求,它给了我相同的结果:

科尔多瓦要求

它仍然给我和以前一样的结果

检测到 Android Studio 项目
android 的需求检查结果:
Java JDK:已安装 1.8.0
Android SDK:已安装 true
Android 目标:安装 android-27,android-26
Gradle:未安装
无法读取未定义的属性“长度”
(node:2392) UnhandledPromiseRejectionWarning: CordovaError: 一些需求检查失败
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\src\cli.js:414:27
在 _fulfilled (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:787:54)
在 self.promiseDispatch.done (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:816:30)
在 Promise.promise.promiseDispatch (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:749:13)
在 C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:557:44
刷新时 (C:\Users\dell\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:108:17)
在 _combinedTickCallback (internal/process/next_tick.js:131:7)
在 process._tickCallback (internal/process/next_tick.js:180:9)
(节点:2392)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝编号:1)
(节点:2392)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程

当我再次检查带有 type 的 gradle 版本时:

gradle -v

它仍然提供与 4.7 相同的版本,结果:

----------------------------------- -------------
Gradle 4.7
-------------------------------------------------- ----------
构建时间:2018-04-18 09:09:12 UTC
修订: b9a962bf70638332300e7f810689cb2febbd4a6c
Groovy:2.4.12
Ant:2017 年 2 月 2 日编译的 Apache Ant(TM) 版本 1.9.9
JVM:1.8.0_162(甲骨文公司 25.162-b12)
操作系统:Windows 7 6.1 amd64

我的问题是,为什么还没有安装 gradle?
请帮助我,我不知道如何再次修复它。
谢谢!

我使用:
科尔多瓦:8.0.0
节点:8.11.2
java jdk:1.8.0
毕业:4.7
Windows 7 64 位

【问题讨论】:

  • 如果你运行cordova build stackoverflow.com/questions/30413485/…会发生什么
  • 你也可以试试这个stackoverflow.com/a/42639125/6587502
  • @deathangel908 结果为prntscr.com/jlj0xb 我猜是因为未安装gradle,对吧?
  • @AshutoshSagar 好的,我会试试的。谢谢
  • 你能调试一下这个东西吗?我的意思是 Cordova 看起来像是在节点内运行 js 的东西,你可以在 check_recks.js:139 内设置断点。此外,您可以在cordova 内部创建问题,因为当找不到 gradle 时,Cordova 至少应该保持不变,而不是抛出未定义异常的 .length

标签: java android node.js cordova


【解决方案1】:

请为您的系统变量添加路径。 IE 打开系统 -> 高级 -> 环境变量 在系统变量部分下单击路径,然后单击编辑按钮 他们将您的路径添加到 gradle/bin。

【讨论】:

猜你喜欢
  • 2020-01-30
  • 1970-01-01
  • 1970-01-01
  • 2023-03-26
  • 2017-10-22
  • 1970-01-01
  • 2020-02-20
  • 1970-01-01
  • 2015-08-05
相关资源
最近更新 更多