我正试图与cordova 第一次建立一个新的项目.我想在我连接的安卓手机上测试这个项目,但我在必要的组件上遇到了问题,不知道该怎么办.

首先,我使用的是:

  • java 8
  • gradle 7.4.2
  • android sdk 24 as the minimum
  • android sdk 34 as the target

当我try 使用cordova run android --device在其文件夹内构建我的项目时,我得到以下错误块:

Checking Java JDK and Android SDK versions
ANDROID_HOME=C:\android_sdk (recommended setting)
ANDROID_SDK_ROOT=C:\android_sdk\cmdline-tools\latest\bin (DEPRECATED)
Using Android SDK: C:\android_sdk
Subproject Path: CordovaLib
Subproject Path: app

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'WeddingLink'.
> Could not resolve all files for configuration ':classpath'.
   > Could not resolve com.android.tools.build:gradle:7.4.2.
     Required by:
         project :
      > No matching variant of com.android.tools.build:gradle:7.4.2 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '7.6' but:
          - Variant 'apiElements' capability com.android.tools.build:gradle:7.4.2 declares a library, packaged as a jar, and its dependencies declared externally:
              - Incompatible because this component declares an API of a component compatible with Java 11 and the consumer needed a runtime of a component compatible with Java 8
              - Other compatible attribute:
                  - Doesn't say anything about org.gradle.plugin.api-version (required '7.6')
          - Variant 'javadocElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a component, and its dependencies declared externally:
              - Incompatible because this component declares documentation and the consumer needed a library
              - Other compatible attributes:
                  - Doesn't say anything about its target Java version (required compatibility with Java 8)
                  - Doesn't say anything about its elements (required them packaged as a jar)
                  - Doesn't say anything about org.gradle.plugin.api-version (required '7.6')
          - Variant 'runtimeElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a library, packaged as a jar, and its dependencies declared externally:
              - Incompatible because this component declares a component compatible with Java 11 and the consumer needed a component compatible with Java 8
              - Other compatible attribute:
                  - Doesn't say anything about org.gradle.plugin.api-version (required '7.6')
          - Variant 'sourcesElements' capability com.android.tools.build:gradle:7.4.2 declares a runtime of a component, and its dependencies declared externally:
              - Incompatible because this component declares documentation and the consumer needed a library
              - Other compatible attributes:
                  - Doesn't say anything about its target Java version (required compatibility with Java 8)
                  - Doesn't say anything about its elements (required them packaged as a jar)
                  - Doesn't say anything about org.gradle.plugin.api-version (required '7.6')

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.6/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 2s
Command failed with exit code 1: G:\CordovaProjects\WeddingLink\platforms\android\gradlew -b G:\CordovaProjects\WeddingLink\platforms\android\build.gradle cdvBuildDebug

有人知道我做错了什么吗?

推荐答案

该错误消息指示您的构建失败,因为Gradle版本和JDK版本不匹配 构建:Gradle:7.4.2需要与Java 11兼容的JDK,但您的系统使用的是Java 8.

要解决这个问题 ->;将您的JDK升级到Java 11 或 将您的Gradle版本降级为与Java 8兼容的版本

Java相关问答推荐

Selenium Java:无法访问IFRAME内部的元素

当一个链表中间有一个循环时,它的松散部分会发生什么?

空手道比赛条件

Java中后期绑定的替代概念

无法在org. openjfx:javafx—fxml:21的下列变体之间进行 Select

使用标记时,场景大纲不在多个线程上运行

如何在带有Micronaut的YAML中使用包含特殊字符的字符串作为键

Java:使用Class.cast()将对象转换为原始数组

类型集合的Jackson JsonNode:类型引用的对象读取器应该是Singleton吗?

当b是一个字节并且在Java中值为-1时,为什么b>;>;>;1总是等于-1?

我可以在@Cacheable中使用枚举吗

Quarkus:运行时出现EnumConstantNotPresentException

无法使用Java PreparedStatement在SQLite中的日期之间获取结果

如何在不作为类出现的表上执行原生查询?

泛型与泛型问题的完美解决方案?

JPA无手术同品种器械可能吗?

在Spring Boot中使用咖啡因进行缓存

Java编译器是否进行了持续的折叠优化,以及如何进行判断?

如何正确使用java.time类?

简化每个元素本身都是 map 列表的列表