【问题标题】:chirp-react-native run-android failing for Java 11 and 12?java 11 和 12 的 chirp-react-native run-android 失败?
【发布时间】:2019-05-06 23:42:40
【问题描述】:

尝试使用 Java 12 和 Java 11 构建 chirp-react-native。不会构建。

如果我下拉到 Java 1.8 并将我的 gradle distributionUrl 设置为 chirp-react-native/android/gradle/wrapper/gradle-wrapper.properties 中的 gradle-4.8-all.zip,则该包编译和安装正确,我认为它运行正确。

但是,如果这是一个简单的修复,我更喜欢使用当前的 JDK。有没有人使用 Java 12 成功构建 chirp-react-native?

重现步骤:

在我的 JAVA_HOME 环境变量 (/Library/Java/JavaVirtualMachines/jdk12-0.1.jdk) 中设置了 Java 12

react-native run-android 失败并出现以下错误:

无法从 12.0.1 确定 Java 版本

如果我作为 JAVA_HOME 下拉到 Java 11,我会收到类似的错误消息:

无法从 11.0.3 确定 Java 版本

使用 Java 1.8 和 Gradle 4.8,一切似乎都可以正常构建、安装和运行。

【问题讨论】:

    标签: react-native chirp


    【解决方案1】:

    此评论描述了此错误的原因 - https://github.com/facebook/react-native/issues/22487#issuecomment-443759776

    您也许可以升级 android/build.gradle 文件中的 gradle 版本。

    【讨论】:

    • 我确实降级到 Java 8,并升级到 4.8,然后应用程序构建。但是我有一种不安的感觉,因为 Java 8 太老了 :)
    • 我听到了。 Facebook 需要整理他们的依赖关系 :)
    • 这是 gradle 2.3.3 和 gradlew 3.5.1 又名直接从你的回购:
    • 对不起,我无法上传,这是“直接从 repo”构建的链接:imgur.com/a/oLyjAq6
    • 您需要在 App.js 文件中设置您的应用密钥、秘密和配置。这些可以从developers.chirp.io 中检索。如果您认为我的回答回答了您的问题,请考虑将其标记为答案。谢谢!
    【解决方案2】:

    您可以尝试从命令行运行./gradlew build 并在控制台中检查其他日志消息吗?可能是您的项目需要一些缺少的依赖项。如果从项目中删除 ChirpSDK 会发生什么?你能用 Java 11/12 而不用 ChirpSDK 来构建它吗?

    【讨论】:

    • 一个没有 Chirp 的“hello world”应用确实是用 Java 12 构建的。gradlew build 说,这个构建中使用了弃用的 Gradle 功能,使其与 Gradle 5.0 不兼容。
    猜你喜欢
    • 2020-09-08
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-11
    • 1970-01-01
    • 2023-01-04
    相关资源
    最近更新 更多