问题描述
我正在生成我使用 React Native 开发的项目的 apk。但是当我运行命令 ./gradlew assembleRelease
时出现以下错误:
> Configure project :react-native-audio
WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
It will be removed in version 5.0 of the Android Gradle plugin.
For more information,see http://d.android.com/r/tools/update-dependency-configurations.html.
> Task :app:generatePackageList Failed
FAILURE: Build Failed with an exception.
* Where:
Script 'C:\Users\romer\ProjetoAP\Gravador\teste\Gravador_de_audio\node_modules\@react-native-community\cli-platform-android\native_modules.gradle' line: 131
* What went wrong:
Execution Failed for task ':app:generatePackageList'.
> argument type mismatch
* 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.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/7.0/userguide/command_line_interface.html#sec:command_line_warnings
BUILD Failed in 24s
1 actionable task: 1 executed
PS C:\users\romer\ProjetoAP\Gravador\teste\Gravador_de_audio\android>
如何解决这个问题?
解决方法
我刚刚遇到了同样的问题,并且能够找到它在我的系统上发生的原因。使用 --stacktrace
标志有助于弄清楚发生了什么,最终指向 react-native-community/cli
包。
在扫描 react-native-community/cli
存储库中的问题和 PR 后,我发现了这个 PR https://github.com/react-native-community/cli/pull/1396,它增加了对 Gradle 7 的支持。
我的系统上有 Gradle 7 并降级到 Gradle 6,运行 gradle wrapper
,然后 ./gradlew clean
允许我继续前进。
希望这能解决您的问题,或者至少让您了解如何在您的系统上追踪它!
,+1 降级到 6。我今天想做一些升级,但结果相反。
,使用 Gradle 6.9 版
以下是此版本的亮点:
- 这是一个小型向后移植版本。
- Java 16 与 Java 工具链一起使用时可用于编译
- 动态版本可以在插件声明中使用
- 对 Apple Silicon 处理器的原生支持
使用 Gradle Wrapper 更改版本。
./gradlew wrapper --gradle-version 6.9